Javascript promises library that works both with nodejs and with browsers. Offers deferreds, queues, an optional queue resolver(), then(), and done(). then() chains return values and pauses execution when receiving an unsettled deferred or queue.