Using createFrom instead of create for creating vec3 makes content defined..
Added debug output to track NaN generation
Now quaternions are multiplied correctly, giving correct modelView.
Projection still has NaNs :(
Projection matrix works fine.
Rotation works fine.
Need to implement moving forward/backward.