EventProxy
An implementation of task/event based asynchronous pattern
...It was created to replace deeply nested callbacks with flatter and more readable control flows. Developers emit named events and register handlers that run when specific combinations or quantities of events have completed. Its all and create methods wait for several different results, while after collects repeated events into an ordered array. The tail method keeps using the latest values when participating events continue to update. EventProxy also provides standard emitter operations such as on, once, emit, and listener removal. ...