anchor.diff:  [<AutoOpen>]
   module LayerDispatcherModule =
   
  -    type [<AbstractClass>] LayerDispatcher<'model, 'message, 'effect>
  +    type [<AbstractClass>] LayerDispatcher<'model, 'message, 'command>
           (propertyFn : Layer -> PropertyTag<'model, World>) =
           inherit LayerDispatcher ()
   
  
positive.code:             let model = property.Get world
              this.View (Actualize, model, screen, world)
  
          abstract member Binding : 'model * Screen * World -> Binding<'message, 'effect, Screen, World> list
          abstract member Message : 'message * 'model * Screen * World -> 'model * 'effect option
          abstract member Effect : 'effect * 'model * Screen * World -> World
          abstract member View : Phase * 'model * Screen * World -> World
  
  [<AutoOpen>]
  module GameDispatcherModule =
  
      type [<AbstractClass>] GameDispatcher<'model, 'message, 'effect>
          (propertyFn : Game -> PropertyTag<'model, World>) =
          inherit GameDispatcher ()
  
  
negative.code:             let world = World.monitorPlus handleMouseLeft Events.MouseLeftUp gui world |> snd
              world
  
      type [<AbstractClass>] GuiDispatcher<'model, 'message, 'command> (propertyFn) =
          inherit EntityDispatcher<'model, 'message, 'command> (propertyFn)
  
          static let handleMouseLeft evt world =
              let gui = evt.Subscriber : Entity
  