create our opengl3 renderer, forked from the opengl renderer

going to add a lot of things and incorporate functionality that the
sfml renderer has