Objective-C Promises in the CommonJS style