[TrainModel] Updated motion prototype

Overhauled integration to match Profeta's explanation
Separated hill force and friction force
Correctly handled train backwards motion