add slerp to quaternion, refactor so that EntityRenderState only
contains pre-camera translated position