Removed some unecessary casts in Location/optimised Location. Double types are treated the same as floats. It's only when you try to treat you use doubles to be a float value that issues arise. Location's x, y, and z values are now doubles, in a nutshell.