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 pause execution when receiving an unsettled deferred or queue.