Add Momentum, clean up and review changes