Support for deferring using setImmediate

Added support for running using setImmediate - if available. Some browser support + efficient shims.

Increased the execution speed of the tests for my promises-based framework by 70x (274ms -> 4ms).

Shims and more info at http://jphpsf.github.io/setImmediate-shim-demo

A future addition might be to include support for MutationObserver, which is now available in all browsers.