going to write some math stuff in since glm isn't opencl friendly and I don't really want all of kazmath