anchor.diff:   * Based on <http://www.richardlord.net/blog/finite-state-machines-with-ash>
    */
   class EntityStateComponent extends Component {
  +  static final CT = ComponentTypeManager.getTypeFor(EntityStateComponent);
  +
  +  /// helper function
  +  static change(Entity e, int state) {
  +    var esc = e.getComponent(CT)/* as EntityStateComponent*/;
  +    if (esc != null) esc.state = state;
  +  }
  +
     int _currentState = null;
     int _previousState = null;
     Map<int, EntityState> _states;
  
positive.code:         var components = world.componentManager.getComponentsByType(provider.type);
          if (components == null || !components.isIndexWithinBounds(e.id) || components[e.id] == null) {
            e.addComponent(provider.createComponent(e));
          }
        });
        next.modifiers.forEach((modifier){
          modifier.applyE(e);
        });
        e.changedInWorld();
      }
    }
  }
  
negative.code:   //(see https://code.google.com/p/dart/source/browse/branches/bleeding_edge/dart/tests/language/type_parameter_literal_test.dart)
    ComponentModifier(Type ctype, this.modifyComponent) : type = ComponentTypeManager.getTypeFor(ctype);
  
    void apply(Entity e) {
      var c = e.getComponent(type);
      //applyC(e, e.getComponent(type));
      if (c != null) modifyComponent(e, c);
    }
  }
  
  