anchor.diff:      member this.UnregisterUncorrelated index =
           if index <> freeIndex then
               components.[index].RefCount <- dec components.[index].RefCount
  -            if components.[index].RefCount = 0 then freeList.AddToBack index
  +            if components.[index].RefCount = 0 then freeList.Add index |> ignore
           else freeIndex <- dec freeIndex
   
       type Ecs<'w when 'w :> Freezable> with
  
positive.code: 
      member this.RegisterUncorrelated comp =
          if freeList.Count > 0 then
              let index = freeList.RemoveFromFront ()
              components.[index] <- comp
          elif freeIndex < components.Length then
              components.[freeIndex] <- comp
  
negative.code: 
      let mutable components = ArrayRef<'c>.make reserve
      let mutable freeIndex = 0
      let freeList = HashSet<int> ()
  
      new (reserve) = SystemUncorrelated (reserve, typeof<'c>.Name)
      new () = SystemUncorrelated (Constants.Ecs.ArrayReserve, typeof<'c>.Name)
  