Javascript library to handle asynchronous dependencies in calculations or other such cases where multiple things are needed to get an end result