Fix compatibility bugs with Firefox 25, 30, 31.

Shim `Array#find` and `Array#findIndex` if they don't match ES6 spec's
treatment of holes.  (Be sure to do this test after `Number` has been
shimmed, and we've already eliminated a premature use of `Math.sign`.)

Broaden the permissible values of `Math.cosh` (Firefox 31 on Linux/x86
shows a difference here.)

Fix an overly-specific test for `Symbol.iterator` (for compatibility,
we use `'@@iterator'` as the name of our iterator on Firefox, in the
absence of `Symbol.iterator`).

The `defineProperties` method doesn't work if we are using
`Symbol.iterator` as the name for the iterator method.  Only newer
browsers define enough of `Symbol` to encounter this problem.  Be
careful when shimming iterators.
SauceLabs/Travis integration.

The `promises-es6-tests` package below version 0.5.0 would fail
IE9 and iPhone OS 5.1 because they lack strict mode support.
Limit the number of browser configurations tested by sauce by default.

We seem to be hitting job limits, probably because I've been
testing this hard all day.  So make passing the sauce tests
optional for now.

Add IE9 and iOS to the browser configuration set, since `promises-es6-tests`
version 0.5.0 fixes the strict mode issues.
See: https://github.com/promises-es6/promises-es6/pull/1
Fix race conditions in collections test case.

Avoid race conditions between the various tests in the collections test
case by having each `describe` clause use its own local variable for
the set/map under test.
Merge pull request #285 from paulmillr/sauce-2

Adds Sauce support for automated browser testing