Adding Composer.promisify()

This zero-arg function replaces all the async functions in Composer's
Model/Collection objects with versions that return JS promises. This
includes Model.[fetch,save,destroy] and Collection.[fetch,reset_async]

This ensures backwards compatibility while also offering the ability to
use futures in your app if desired.
fixing promisify error wrapping