improved promise polyfill usage under node.js