* for-of: IteratorClose spec compatibility.
See #3:
https://tc39.github.io/ecma262/#sec-iteratorclose
* Update spec fixtures for for-of.
* Fix IteratorClose case for remap-async-to-generator.
* Fix IteratorClose case for async-generator-function test output.
* Modify few tests according to iteratorClose fix.
* Fix iteratorClose for helpers.slicedToArray also.
* Update iteratorClose fixture for commonjs.
* Remove whitespace generation and rely on default printing
Changes to printing:
* Add newline after last empty SwitchCase
* Add newlines around block comments if they are non-flow comments or contain newlines
* Fix a few more fixtures
* Spec compatibility for template literals.
* Update preset-es2015 `spec` expected case.
* Prevent array mutability by replacing `shift`.
* Fix condition for single item.
* Group concats to ensure toPrimitive sequence.
* Update function test case.
* Add semi for function test case.
* Simplify concat call expressions creating.
* Fix some cases with multiple idengifiers.
* Add test case with different literals.
* Add test case for `Symbol()` and toPrimitive order
* Add actual literal case.
* Add minNodeVersion to template literals order.
* Flip the logical expression.
* Update README for template literals spec option.
* docs [skip ci]
* Handle arrow function processing via shared API rather than default plugin.
* Fix a few small PR comments.
* Preserve existing spec arrow 'this' rewrites, and support spec in subclass constructors.
These tests are originally from Traceur, which does not fully support
ES2016.
See babel/babylon#106 for a rationale why these code blocks are not
valid ES2016.