anchor.diff:              if this.FreeIndex < this.Components.Length - 1 then
                   this.Components.[this.FreeIndex] <- comp
                   this.FreeIndex <- inc this.FreeIndex
  -                this.FreeIndex - 1
               else
                   let arr = Array.zeroCreate (this.Components.Length * 2)
                   this.Components.CopyTo (arr, 0)
                   this.Components <- arr
                   this.Components.[this.FreeIndex] <- comp
                   this.FreeIndex <- inc this.FreeIndex
  -                this.FreeIndex - 1
  +            this.FreeIndex - 1
   
           member this.RemoveComponent index =
               if index <> this.FreeIndex then
  
positive.code:             if this.FreeIndex < this.Components.Length - 1 then
                  this.Components.[this.FreeIndex] <- comp
                  this.FreeIndex <- inc this.FreeIndex
                  this.FreeIndex - 1
              else
                  let arr = Array.zeroCreate (this.Components.Length * 2)
                  this.Components.CopyTo (arr, 0)
                  this.Components <- arr
                  this.Components.[this.FreeIndex] <- comp
                  this.FreeIndex <- inc this.FreeIndex
                  this.FreeIndex - 1
  
          member this.RemoveComponent index =
              if index <> this.FreeIndex then
  
negative.code:             this.FreeIndex <- dec this.FreeIndex
              index
  
  type [<NoEquality; NoComparison>] RotationSystem =
      private
          { mutable Components : Transform array
            mutable FreeIndex : int
  