Add support for fields to the new dart backend.

Field initializers are represented similarly to a function with no
parameters.
When they are emitted in backend_ast_emitter.dart `ensureExpression`
wraps the code in an immediately invoked closure if it is not on the
simple form `return e;`.
Ideally this should never happen, but currently happens for cases like eg.
class A {
  static var b = 1;
  var a = b++;
}

main() {
  var a = new A();
  print(a.a);
}

Gets converted to:

class A {
  static var b = 1;
  var a = (() /* new backend */
    {
      var v0;
      v0 = A.b;
      A.b = v0 + 1;
      return v0;
    }
  )();
}

main() /* new backend */
  {
    print(new A().a);
  }

R=kmillikin@google.com

Review URL: https://codereview.chromium.org//759193005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@42024 260f80e4-7a28-3924-810f-c04153c831b5
dart2js: Make usage of names more consistent between compiler and runtime.

R=karlklose@google.com

Review URL: https://codereview.chromium.org//767643002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@42025 260f80e4-7a28-3924-810f-c04153c831b5
dart2js: Remove dead code in type test emitter.

R=karlklose@google.com

Review URL: https://codereview.chromium.org//766743002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@42026 260f80e4-7a28-3924-810f-c04153c831b5
dart2js: Split TypeTestEmitter into a registry and an emitter.

R=karlklose@google.com

Review URL: https://codereview.chromium.org//763123002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@42027 260f80e4-7a28-3924-810f-c04153c831b5
dart2js: Move TypeTestRegistry into its own file.

R=karlklose@google.com

Review URL: https://codereview.chromium.org//766763002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@42028 260f80e4-7a28-3924-810f-c04153c831b5
Support for map literals in cps js emitter

R=floitsch@google.com

Review URL: https://codereview.chromium.org//761983002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@42029 260f80e4-7a28-3924-810f-c04153c831b5