opengl/Model uses a opengl/Material instead of separated shaders and program + Uses the MeshLoader class to load the binary meshes.
opengl/Renderer Added testing renderModel test
Added most source code into the jcp namespace
Implemented Uniforms in Material class
Added uniform.h
Added a very simple (inotify based) watcher class
IMaterial interface gets a bunch of UNiform related methods
IModel interface adds a loadModel variant that loads a material file as well as a model file.
EngineBackend renamed to IEngineBackend
Added window system related method to the IEngineBackend interface
Exceptions derive from std::exception / CompilationError exception implemented
Added the getMaterial method to the IModel interface
Added the setNamedUniformMat4 method to the IMaterial interface
Implemented the initial attribute bindings in gl_Program (POISTION, NORMAL)
glShader: checkCompilation is now a method + on error throws a CompilationError exception
Removed opengl/main.cpp
gl/Material class only pushes a uniform if it is available in the shader (implemented setNamedUniformMat4)
gl/Model class handles attributes now.
Removed most of the testing code in gl/Renderer
gl/Shader properly handles the possibily of errors in reloadFile