Moved Link viability tests outside of RoadRunnerService, made them static.
Moved some geometric code into its own class (with static access).
Misc. cleanup