Implement ability to push minecarts on curved rails

This is my first real code contribution to an open source project. I'm grateful for any advice!
What if `Distance.z` is a small negative number, such as -0.0009? You're turning it positive, which could reverse the direction. You should still compare to zero to make it the right sign.