INT: removed the need to the epsilon struct and reused std::numeric_limits<S>::epsilon() instead
INT: the layout of matrices is now injected as a template parameters (opening the possibility for rgb and rgba without having to resort to anonymous struct)
INT: renamed template parameter S as scalar in matrix
INT: some cleanup
INT: movew to brew installs of SDL2 and GLEW, added glewInit and creation of glcontext in windows
INT: added glClear to the window