Functional library for working with Promise/Deferred objects