Added a Promises class with utilities on, well, Promises