object style wrapper around opengl