Fixes to ensure LibOVR initialized properly

Declaring a StereoFusion as a global causes problems because its
constructor assumes LibOVR has been initialized. So, I encapsulated it
in a device object with an additional member that RAIIs the API. By
declaring this device object statically, the API is automatically
started and stopped.