To prevent tunneling when the rigid body cannot reach it's target due to being blocked by a wall or some other obstacle.
Also, added unit tests for physics/BulletUtil rotateVector and clampLength functions.
Compute HMD facing moving average.
When the moving average diverges from the hips by more then 45 degrees, recenter the body.
Also, the follow code has been changed, instead of a follow velocity being passed to the CharacterController
a desired target is passed. The CharacterController homes toward it's target based on the time remaining.
Any follow deltas applied to move the avatar's position closer to it's target is stored and re-applied
to the bodySensorMatrix. This centralizes the moving/homing code to one place, the CharacterContoller.
A new FollowHelper class was also introduced, it groups together the data and logic necessary to perform the
re-centering/follow procedure. This "hopefully" makes it easier to maintain.