on pushing a call, check the promise status
defer (or nextTick) the pushCall'ed func
follow convention
self = this (for minification)
un-necessary variable definition
idcounter directly
shorter native function references
remove un-necessary `is` functionality
allow ES6 style invocation
update version