C++ OpenGL Framework