Added RetimeTrajectory function that fall backs on linear smoothing.

Changed RetimeTrajectory to first attempt ParabolicRetimer, and fall back on LinearTrajectoryRetimer if that fails.

This is because ParabolicRetimer can fail in certain situations because it smooths the original trajectory slightly.  LinearTrajectoryRetimer will always work, but produces a trajectory that must stop at each waypoint.