Asynchronous control-flow library for JavaScript