* Improve typing for Generators and Async Generators
* Add TReturn and TNext to Iterator, IterableIterator, etc.
* Update ts internal Iterator to be assignable from global Iterator
* Make 'done' optional in IteratorYieldResult
* Revert Iterable and IterableIterator to simpler versions plus other fixes
* Add additional inference tests
* Added additional tests
* PR cleanup and minor async iteration type fix
* Updated diagnostics message and added non-strict tests
* Fix expected arity of Iterator/AsyncIterator
* Add support for sharding tests across multiple workers
* Disable unittests when runners are expressly provided (unless they contain the unittest runner)
1. Add a script to generate a sorted list of most costly tests. A tests'
cost is roughly `runtime% / number of edits`. A slow test that's only
been updated once is much less valuable than a slow test that has
been updated 20 times: the latter test is catching more changes in the
type system.
2. Check in the results of running this script. I want to make the
skipping behaviour deterministic and the same for everybody, even though
you may get slightly better performance by examining only *your* test
changes.
3. Add code to skip tests until it reaches a 5% chance of missing an
edit. Right now this provides a 38% speedup.
Still not done:
4. Make this value configurable.
5. Make the CI configuration specify a 0% chance of missing an edit.
* Some callbacks in watchUtilities werent being strictly checked due to the structural fallback
* Add direct dependeny on ms since mocha removed its impl
* Manually init stats collection on base runner like mocha.run now does
* Optimize sourcemap application more
* Remove test-only memory hog sourceMapDecodedMappings field
* Update for style, remove unused function that triggers warnings in node 10
* Avoid all raw buffer constructor calls
* Small TDZ fix