Futile attempts at abstracting raw openGL