Light structure, 3D mouse movement, Vector Normalling NOTE: SHOULD MAKE A VECTOR4 CLASS AND HAVE ALL FUNCTION SIGNATURES USE IT INSTEAD OF FLOAT*