Use `core-upgrade` instead of require('es6-shim').

The `lib/core-upgrade.js` was introduced as a unified place to
document the exact variant of JavaScript we are targetting -- eg, ES6
plus some helpers like `Array#last` and `prfun` which aren't actually
part of ES6 but we like to use.

Be disciplined to ensure we don't inadvertently have strange bugs:
every entry point (ie, starts with `#!`, is invoked with
`child_process.fork`, or is a module exported as part of the public
API) should immediately `require('core-upgrade.js')` at the top of the
file.  Files which are not entry points should never need to do this.
No file should ever need to `require('es6-shim')` directly.

Change-Id: I71e84e0c7fc8448c19035ef798e2c1c95fa241b8
Documentation and promise updates.

Follow up to I0f08b9928e030a1a267105a91eb7727bc3567a4c.

Add documentation for `JSUtils.mkPromised` and note which functions can
now be invoked with a Promise-returning API.

Use `Promise#done` instead of manually testing `err` in a few places where
we are now calling Promise-returning API.

Convert `getGitCommit` in the RT testing client into a Promise-returning
API. Add some error-handling in a few cases where this exposes it was
previously missing.  (This is just some low-hanging fruit, it's not a
full promisification of the RT testing client.)

Convert `roundtrip-test.js:fetch` into a Promise-returning API, including
reordering the parameters to put the callback last, as per node conventions.
Again, this is just low-hanging fruit -- actually fully converting the
call sites would be more work than I'm willing to bite off at the moment.

Change-Id: I1396a5e974a71dedbbbdeb34d18bdb988f369d24
RT server: Make /commits endpoint usable again

* Removed the number of results output for commits since that is
  expensive to compute for the requested revisions and makes the
  mysql server unhappy.

* Added a limit of 100 revisions so the /commits output is more
  reasonable.

* This should make it simpler to generate regression urls before
  deploys.

Change-Id: Ib9c2707f4033d89de1852f58b6e9c07a3387722e
Merge "RT server: Make /commits endpoint usable again"
Merge "Use `core-upgrade` instead of require('es6-shim')."
Merge "Documentation and promise updates."