promisename-885318: Fix name collision with Promise

From the bug: https://bugzilla.mozilla.org/show_bug.cgi?id=885318

devtools use a lot of Promise objects implemented in JS.
But bug 884279 renames Future to Promise and this makes a name collision.
Talking on IRC on #devtools, we found 2 possible solutions:
a) Rename Promise to JSPromise (or to something else)
b) do some destructuring assignment on import, like:
    let {resolve, reject, etc. } = Cu.import("promise.js");

This is option a) done as s/Promise/promise

Signed-off-by: Joe Walker <jwalker@mozilla.com>
Merge branch 'promisename-885318' into filetype-767587

Conflicts:
	lib/gcli/cli.js
	lib/gcli/converters.js
	lib/gcli/types/basic.js
	lib/gcli/types/command.js
	lib/gcli/types/node.js
	lib/gcli/types/resource.js
	lib/gcli/ui/inputter.js
	lib/gclitest/helpers.js
	lib/util/host.js
filetype-767587: Firefox testing

Turn off predictions for now, they're slow and I'd rather get this in
than spend time diagnosing. Also add test set for Firefox, and remove
the DL-distance debug from the prediction description.

Signed-off-by: Joe Walker <jwalker@mozilla.com>