Small library implementing asynchronous promises in C#