promiseA/Promise.coffee