A set of tools for wrapping asynchronous APIs in RSVP promises