anchor.diff:                  if this.Components.[index].RefCount = 0 then this.FreeList.Add index |> ignore
               else this.FreeIndex <- dec this.FreeIndex
               comp.Disjunction junctions entityId ecs
  +            let _ : bool = this.Correlations.Remove entityId
  +            let _ : bool = this.CorrelationsBack.Remove index
  +            if  this.Components.Length < this.FreeList.Count * 2 &&
  +                this.Components.Length > Constants.Ecs.ArrayReserve then
  +                this.Compact ()
               true
           | (false, _) -> false
   
  
positive.code:     member internal this.FreeList with get () = freeList
      member internal this.PreDeque with get () = preDeque
      member internal this.Correlations with get () = correlations
  
      abstract ComponentToBytes : 'c -> char array
      default this.ComponentToBytes _ = failwithnie ()
  
negative.code:                 let index = Seq.head this.PreDeque
                  let _ : bool = this.PreDeque.Remove index
                  this.Correlations.Add (entityId, index)
                  this.CorrelationsBack.Add (index, entityId)
                  let mutable comp = comp.Junction systems entityId ecs
                  comp.RefCount <- inc comp.RefCount
                  this.Components.Array.[index] <- comp
  