Add jshintignore
Rely on setImmediate polyfill, now that poly/setImmediate is imminent cc @unscriptable
Removing straggler deferred.then usages
Merge dev
Add tests to ensure when forces async handlers
Increase timeout to account for fast nextTick impls
Rewrite to utilize a trampline-based method of asynchronous resolution.

By utilizing a trampoline, promises are prevented from blowing the call stack.
This implementation also allows consecutive promises to be handled in the
same tick, improving performance.