Maybe I'm wrong but I always thought settimeout was far simpler than this blog goes on about. My understanding is that it puts a frame into the queue that keeps getting ignored until _at least_ timeout ms has elapsed.
Therefore, settimeout of 0 is to basically place a frame into the queue, "do this once the stack is empty and there's nothing in front of it in the queue."
They're just about placing frames into some place in the queue.
Is it not that simple?