Issue 60:	Generate SourceMaps

Added new option to ParseTreeWriter.write(tree, option): 
  set option.sourceMapGenerator to an instance of source-map SourceMapGenerator
  result will be on option.sourceMap upon return

Added option to repl.html, sourceMap, to show sourceMap (just to give a idea of the feature)

Added test to allTests.

Based on source-map library of @fitzgen 
  https://github.com/mozilla/source-map
  third_party/source-map is git@github.com:johnjbarton/source-map.git as fake git submodule. 
  BSD license, Mozilla authors

Review: https://codereview.appspot.com/5694076/
Refactoring; Create src/outputgeneration and move *.Writer.js files there Issue 66
Added test/system/hello_test.html to cover bootstrap.js  Issue 68

https://code.google.com/p/traceur-compiler/issues/detail?id=66
https://code.google.com/p/traceur-compiler/issues/detail?id=68

Review: https://codereview.appspot.com/5710045/
Issue 67: Refactor: breakout class-level option processing like ParseTreeWriter.write into Writer type independent file

Bug: https://code.google.com/p/traceur-compiler/issues/detail?id=67

Review: https://codereview.appspot.com/5731050/
Issue 70:	Refactor: move SourceMap from /codegeneration to /outputgeneration

Bug: https://code.google.com/p/traceur-compiler/issues/detail?id=70

Review: https://codereview.appspot.com/5726063
Refactor collection transformer

This removes the traceur.runtime.elementGetCall in favor of inlining it.

BUG=None
TEST=Covered by existing tests.

Review URL: https://codereview.appspot.com/5794072
Fix AsyncTransformer finally tree transformation

BUG=http://code.google.com/p/traceur-compiler/issues/detail?id=80
TEST=Added Await/Finally.js and Yield/Finally.js

Review URL: https://codereview.appspot.com/5903063
Fix Issue 73:Uncaught Error: Unicode escape sequence at line 0; reports an unimplemented error message that shows up in the repl/parse output error reporter.
Maximally minimal classes

http://wiki.ecmascript.org/doku.php?id=strawman:maximally_minimal_classes

This allows the following minimal class syntax.

class C extends B {
  constructor() {
    super();
  }
  method() {
    super.method();
  }
  get x() {
    return super.x;
  }
}

This also removes support for the old classes and traits. We are all in on ES6 classes!

BUG=http://code.google.com/p/traceur-compiler/issues/detail?id=79
TEST=Updated all the existing tests

Review URL: https://codereview.appspot.com/5900072
Remove Object.freeze calls that are not needed
Change the CC list for code reviews to traceur-compiler-reviews@googlegroups.com
instead of the internal Google mailing list.
Fix testfeature.js to work from any directory
Clean up Arrow Function Syntax

This brings our arrow syntax in line with the current proposal.

It adds support for:

x => x  // no parens needed for one identifier param
x => {a: b}  // => { is always treated as block

It removes support for

x -> x  // no support for thin arrow
(this, x) -> x  // no support for rebinding this
-> 42  // no support for optional ()

BUG=http://code.google.com/p/traceur-compiler/issues/detail?id=85
TEST=feature/ArrowFunctions/

Review URL: https://codereview.appspot.com/5990051
Add tree location by default in ParseTreeTransformer.

This is so that we do not lose the location when we don't have to.

BUG=None
TEST=None

Review URL: https://codereview.appspot.com/6015045
Fixed errors found when compiling the source.
Extract ErrorReporter.format from repl.html

BUG=None
TEST=error_reporter_test.html

Review URL: https://codereview.appspot.com/6057043
Add support for expected errors to the test runners

BUG=None
TEST=test/feature/ObjectInitialiserShorthand/Error_MissingVar.js

Review URL: https://codereview.appspot.com/6049045
Module import

Works with local modules and standard modules.

import iterator from '@iter';

module m {
  export var x = 42;
}

import {x: renamed} from m;

import * is done by associating the module expression with the tree during the
ImportStarVisitor phase. Once we get to the tranformation phase we get the
module symbol and we know what it exports.

import * from '@name';

BUG=http://code.google.com/p/traceur-compiler/issues/detail?id=26
TEST=feature/Modules/*

Review URL: https://codereview.appspot.com/6033051
Change from Name.create to new Name.

This also changes the internal string representation of private names to use
a name that is a valid identifier so that we do not trigger V8 slow mode.

BUG=https://code.google.com/p/traceur-compiler/issues/detail?id=78
TEST=Covered by existing tests.

Review URL: https://codereview.appspot.com/6034046
Update the collection demo to use import and use the iterator private name.
Add support for rest params in arrow functions

To support this we temporary allow ...expr as an unary expression in the parser
and then we validate that.

BUG=http://code.google.com/p/traceur-compiler/issues/detail?id=86
TEST=test/feature/ArrowFunctions/Error_SpreadNotLast.js
     test/feature/ArrowFunctions/Error_SpreadOutsideFormals.js
     test/feature/ArrowFunctions/ArrowFunctions.js

Review URL: https://codereview.appspot.com/6033044