todo
added opengl implementation
todo
Merging to master