anchor.diff:  
       static member correlateComponent guid ecs =
           ecs.Correlations.[guid] |>
  -        Seq.map (fun systemName -> EntityComponentSystem.getSystem systemName ecs) |>
  -        Array.ofSeq
  +        Seq.map (fun systemName -> (systemName, Ecs.getSystem systemName ecs)) |>
  +        dictPlus
   
       static member make () =
           { Systems = dictPlus []
  
positive.code:         | _ -> failwith ("Could not find expected system '" + systemName + "'.")
  
      static member removeComponentCorrelated<'t when 't : struct and 't :> Component> systemName guid ecs =
          match EntityComponentSystem.tryGetSystem systemName ecs with
          | Some system ->
              match system with
              | :? ('t SystemCorrelated) as systemCorr ->
  
negative.code:     let mutable components = [||] : 't array
      let mutable freeIndex = 0
      let freeList = Queue<int> ()
  
      member this.Components
          with get () = components
      
      member this.FreeIndex
          with get () = freeIndex
  
      member this.GetComponent index =
          if index >= freeIndex then raise (ArgumentOutOfRangeException "index")
  