There's a better Promise implementation to use now - just import
Cu.import("resource://gre/modules/Promise.jsm");

It has the same API, so you shouldn't have to change anything else.