Transfer code from overused Mobile to IMove (and IMoveInfo)

Changed most references of trait Mobile -> IMove.
In Mobile.cs IsMoving now has a public set as opposed to the initial internal.
Added IMoveInfo interface to go with *Info classes that use IMove.
WithRotor now uses IMove.IsMoving instead of (self.CenterPosition.Z > 0) as part of a check.