Update rendering to use the latest OpenGL standard
The code has many legacy OpenGL calls, this costs the framework rendering speed, causes confusion for users, and causes incompatibility with other libraries like Oculus (Oculus' SDK rendering changed, so no longer an issue)
- This task would greatly improve performance: Implement a VBO for storage of vertex data on the GPU for any rendered meshes (this might be just smSurfaceMeshes, not sure though).
- Create default pass-through vertex and fragment shaders for objects that won't require custom shaders for rendering
- Remove all fixed pipeline OpenGL code, and force a shader style rendering that takes MVP matrices