Fix nested setImmediate stuck

This pull request is to workaround https://github.com/cjohansen/Sinon.JS/issues/593.

A `tick` call will not return when a timer with nested call of `setImmediate` is scheduled. The fact that time does not pass at all during timer execution causes this issue. This patch is to increment `callAt` of `setImmediate`-ed timer if it is added during `tick` execution.

It also contains commits for #11. f6cd25f is the fix for this, and I would rebase this once #11 is merged.