Really cool drive train stuff added

It is still theoretical, but it looks good and we cleaned up the code.
We moved some of the logic out of boolean testing and into math based
logic.