3D cube puzzle game/solver using OpenGL