Guaranteed way for getting a Promise. Always native Promise if available, otherwise looks for common promise libraries and loads which is installed. Allows registering custom Promise implementation in node < 0.12 versions
Get the prototytpe of the Promise class (Native ES6, Bluebird, Q, RSVP, etc.)
Easy as cake e-mail sending from your Node.js applications with any promise