{promise} Add static methods and their tests
[promise] Move and comment factory methods
[promise] Add resolve() method to Promise.Resolver
[promise] Change mentions of `fulfill` to `resolve`
[promise] Rewrite `batch` and `when`...

...in terms of `all` and `cast`
[promise] Add tests for `catch`, `all` and `race`
Merge remote-tracking branch 'upstream/dev-3.x' into promise-all
[promise] Update promises docs

- Replace mentions to Y.batch with Promise.all
` Include section about Promise.race
[promise] Add API docs for Promise.cast
[promise] Docs cleanup

Fixing typos and removing extra mentions to Y.batch
[promise] Return early in case of an error...

...in Promise.all and Promise.race
[promise] Fix typo in Promise.all docs
[promise] Add API docs for promise.catch()
[promise] Make JSHint happy
[promise] Add tests for Promise.cast
[promise] Check that all and raced promises resolve correctly
[promise] Add HISTORY entry
[promise] Improve the API docs for `resolve`
[promise] Fix typo in tests
[promise] Test instanceof when subclassing w/static methods