Adding a new rendering (opengl) object to VR

Essentially VR class defines the environment. In general the environment
consists of input (devices) output (opengl for now) and scene which
reads data form input and renders itself to the output.

Note the OpenGL class is temporary for now. It should be replaced with a
general VR display API which can manage multiple graphics context. This
will be implemented in the future.