Unit Motion - wrap target state into a struct
These variables together held the state for the target of UnitMotion, as set by the MoveTo[X] family of functions.
Wrapping them in a struct reduces the chances that one will accidentally forget to reset part of the state and makes it explicit in-code that these are grouped together.
Calling StopMoving() resets this target, which wasn't before and left the component in an incoherent state.
Differential Revision: https://code.wildfiregames.com/D1887