more consistent use of `process.nextTick`

closes gh-103
Following node's guidlines for using `process.nextTick` (fallback
to `setTimeout`) consistently. Initial calls to tasks are now all
synchronous and all callbacks from tasks are now asynchronous.
fix example for http client

was not exiting or returning the correct time for parallel requests