Firstly here is the full source:
Main is in app.cpp
Utils contains error clearing/logging command, one of them being the all frequent GLLOG().
rest is self explanatory

Then onto the other api specification:
Opengl4 Core
GLEW 2.1
GLFW 3.2

Now if you compile above, with my setup, it loads a white screen and stops responding.... Am I doing something dumb?

Note: I have little experience in c++ compared to java and python so please do be gentle