Switched over slerp to use inv() and cleaned up some of the math