anchor.diff:      function OnKeyPress( ch :  char ):boolean; virtual;
     end;
   
  +  TWorld = class (TMorph)
  +    public
  +      manageKeyboard : boolean;
  +      constructor Create;
  +      procedure Step; override;
  +      procedure Draw; override;
  +      function Done : boolean;
  +    end;
  +
  +
   var
  -  world , focus : IMorph;
  +  world	: TWorld;
  +  focus	: IMorph;
   
    
  
positive.code: 
  
  type
    TWorld = class (TMorph)
      public
        procedure Step; override;
        procedure Draw; override;
        function Done : boolean;
      end;
  
  procedure TWorld.Step;
    var a : IActor;
    begin
      HandleKeys;
      for a in self.children do
        if a.active then a.Step;
      Draw;
  
negative.code:       constructor Create(etag: integer; edata:variant);
      end;
  
  
    TActor = class (TVorunati<IMessage,void>, IActor)
      _active,           { wants update() }
      _alive,            { exists but not alive triggers gc }
  