Basic OpenGL back-end with a working triangle example (fixes #1)

I wonder if this is even needed now? ie. let the client create their own render task?