Deanh/setimmediate

Node v0.10 changes the default process.nextTick behavior; callbacks to process.nextTick are now executed at the end of the *current* tick rather than in the actual next tick, so chaining calls to build a loop no longer works.

I think this is the behavior that we want, as it would maintain current behavior if runTask is being called inside of runTask anywhere.

Discussion welcome.