UI: support linear acceleration in js movement loop
UI: synchronize js client movement w/ server algorithms

Few small / related changes:

- extract _rotate helper out of js rotation strategy

- support stop_angle in _rotate

- small updates to Follow to reflect server movement algorithm
  (including making use of stop angle)

- Add generator for js follow movement strategy

- Tweak linear ms generator to set max_speed to speed if
  not specified
UI: update js figure8 movement to reflect server movement
Figure8 movement strategy improvements / optimizations

Related changes to figure8 ms and supporting modules tweaking
algorithm and handling edge cases.

- Simplify / optimize figure8 ms, both server side and js client
  implementations

- distinguish between 'orientation_difference' to 'rotation_to'
  in both server side and js math modules, former takes
  orientation & later takes coordinates, both returning axis
  angle representing respective difference

- handle various edge cases with acceleration, stop angle (now
  an exclusively positive / increasing value w/ 'angle_rotated'
  tracker),

- add various helpers to server and js mixins and math modules
  to provide tighter semantics and functional binding

- tweak 'face_away_from_target' helper to pick escape vector
  Math.PI/4 degrees of direction to target

- initialize angle_rotated and distance_moved in loc js generators

- rename js Location Tracking module #on_target method to
  #near_target to match server side corespondence
UI: preload solar system interconn texture in load_gfx

Previously small regression occurred where loading icon was
not dissapearing since some solar system gfx weren't loaded
until a call to init_gfx
Tweak movement constraints and tracking distances for better exp
UI: fix regression where projectile velocity not being set

Since acceleration added, velocity is now independent of
orientation (by default) and needs to be explicitly updated
when we need to
Reduce MS step delay, remove uneeded param / method

Reduced step delay facilites more granular state changes, needed
to improve client-server syncronization
UI: unrelated various one/few liner cleanups

- tweak ship rotation tracking and follow distance for
  better effects

- fix small regression Omega.Math.angle_between to use
  correct method

- parameterize max angle in Location#face_away_from_target,
  use in figure8 strategy

- add distance_to_target and angle_to_target helpers

- extract orbit mixin center calculation into overridable method

- fix regression entity gfx resource loader when type wasn't
  being detected when value is 0