anchor.diff:  
     @property
     List<int> myInts = [];
  +
  +  @property
  +  List<Thing> myThings = [];
   
     @property
     Map myMap = {};
  
positive.code:       expect(element.jsElement['myMap']['hello'], 'world');
      });
  
      test('List', () {
        element.set('myInts', [1, 2, 3]);
        expect(element.myInts, [1, 2, 3]);
        expect(element.jsElement['myInts'], [1, 2, 3]);
  
negative.code:       expect(element.myInts, [1, 4, 3]);
        expect(element.jsElement['myInts'], [1, 4, 3]);
      });
  
      test('List.index', () {
        element.add('myThings', new Thing("A"));
        element.add('myThings', new Thing("B"));
        element.add('myThings', new Thing("C"));
        element.set("myThings.1.field","D");
        element.removeAt('myThings',0);
        element.set('myThings.1.field',"E");
  
        expect(element.myThings.map((Thing t )=> t.field).toList(),["D","E"]);
      },skip:"Until https://github.com/Polymer/polymer/issues/2490 is fixed");
  
      test('List.replace', () {
        element.add('myThings', new Thing("A"));
        element.add('myThings', new Thing("B"));
        element.add('myThings', new Thing("C"));
        element.set("myThings.1",new Thing("D"));
        element.removeAt('myThings',0);
        element.set('myThings.1',new Thing("E"));
  
        expect(element.myThings.map((Thing t )=> t.field).toList(),["D","E"]);
      },skip:"Until https://github.com/Polymer/polymer/issues/2490 is fixed");
  
      test('JsProxy', () {
        var newModel = new Model('world');
  