[When.js](https://github.com/cujojs/when) looks pretty good at first glance.