Add EndpointCrossOver class to encapsulate logic

Big code clean-up!
This commit simplified the commandline arguments...
making them all position.