anchor.diff:  
   type DevToolsMessage<'TAppMessage, 'TAppModel> = 
       | AddMessage of 'TAppMessage * 'TAppModel
  +    | MessagesReplayed of (Guid*'TAppModel) list
       | Replay of 'TAppModel * ((Guid*'TAppMessage) list)
       | ToggleObjectVisibility of string
       | ToggleAction of Guid
  
positive.code:             {model with LastCommited = latestCommited::model.LastCommited; Actions = []}, [fun h -> h (Replay (latestCommited,[]))]
          | AddMessage (msg, appModel) ->
              {model with Actions = model.Actions @ [{Id = Guid.NewGuid(); Excluded = false; Message = msg; State = appModel}]},[]
          | ToggleObjectVisibility str ->
              let currentValue = isCollapsed str model
              {model with Collapsed = model.Collapsed |> Map.add str (currentValue |> not)},[]
  
negative.code:         Producer = (fun h -> linkAgent.Post(SetHandler h)) 
          Subscriber = (function 
                          | ModelChanged m -> devToolsAgent.Post(Message (AddMessage (m.Message, m.CurrentState)))
                          | Replayed modelList -> devToolsAgent.Post(Message (MessagesReplayed modelList))
                          | _ -> ())
      }
  