Make parse_dammit honour the 'ranges' option

Closes #140
[loose parser] Ignore shebang lines

Closes marijnh/tern#408
Remove bogus support for \U escapes

Issue #147
Move comprehension support under `ecmaVersion: 7` as per spec.
add unicode flag support to regex
Only apply kludge from f48503cd31826f8cfb0f0e2b6964879dbe318385 when unicode regexps are not supported
Remove property name clash check in ES6 as per Draft Rev 26.

See https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-06/jun-6.md#conclusionresolution-3 for details.

Conflicts:
	test/tests-harmony.js
Remove redundant range info from tests
make ImportDeclaration and ExportDeclaration semicolons more spec-compliant
Add support for computed static mutator class methods
Make test runner more generic.
Indentation fix.
Added .editorconfig.
Editorconfig: enforce Unix line endings and extra new line in the end of file.
Added loose parser support to test runner (currently failing for 208/1680).
Loose: Added ParenthesizedExpression.
Clone test options object since calling `parse` is destructive for it.
Loose: ES6 function params support.
Make setOptions non-destructive for original object.
Collect test stats separately for each mode.