New controls, trouing rails, various patches

New Controls:LEFT or RIGHT to switch track at junction
             DOWN for hand break
             JUMP lock the users view to the view of the cart
             SNEAK unlock the users view from the cart
Touring Rails: Try to maintain a speed of 4.5
Chat notification of controls when cart is placed
Track rail count in debug.txt
punch by driver patch from spillz  (Lets a user start a cart they are riding in)
get_voxel when hit ignore patch by minermoder27  (helps avoid occasional random stops by the cart when the engine doesn't load the next rail)
searches further up and down for rail when cart falls off rails in order to  avoid cart getting stuck above or below rails.  This seems to eliminate the problem of carts getting stuck several nodes above or below the rail.

I haven't been able to reproduce the "sudden reversal" problem reliably enough to try and patch that yet.

There are some spacing and comment changes in here that happened as I was trying to figure out the code, none of that is important and if they annoy you can be removed.

I'm new to Lua and minetest, so do not hesitate to critique or correct any coding errors I've made.  

The deeper I get into the carts code, the more I realize how awesome and complicated the original mod is.  Thank you for considering these changes!