Cleanup
Refactor|Client: Separated VR content transformation from ClientWindow

To maintain proper SoC, added a new class that handles the job of
transforming content from 1:1 coordinates to some other coordinate
system.

VRContentTransform currently handles all the VR use cases, although
it could further be split if necessary.

Todo: ClientWindow should dynamically switch between
WindowContentTransform instances.
Client: Renamed WindowContentTransform to ContentTransform
libgui|GLTarget: Corrected pixel format for grabbing target contents
Stereo 3D|Fixed: Blacked out floors and other surfaces

The alpha test was still on, preventing some surfaces from being
drawn to the framebuffer via the Oculus Rift distortion shader.

The default GL state of the legacy renderer has alpha test enabled.
Refactor|Input: Fixed a boolean trap in the input subsystem
Client|API: Querying if a control has bindings, added new look controls

The public Player API was enhanced with a function for querying
whether a control has any bindings.
libcommon: Added lookpitch/lookyaw controls

"lookpitch" (CTL_LOOK_PITCH) overrides the delta-based CTL_LOOK if
it has bindings.

Also did some cleanup.
Input: Generate some test events for the Head Tracker virtual device

This can be tested with the binding "bindcontrol lookpitch head-pitch".

If the binding exists, normal mouse Y etc. bindings will be ignored
and the absolute angle from 'head-pitch' is used instead.

(Also helpful for testing: 'listbindings', 'delbind')
libcommon: Separate body/head yaw controls

The head yaw only controls look direction, while the body yaw
controls an offset added to the gun/body direction. Both are
separate from the main delta-based "turn" control.

The head tracker device is now getting simulated yaw events.

To test this out:
- bindcontrol yawhead head-yaw
- bindcontrol yawbody head-yaw
Merge branch 'oculus-rift' into low-latency-input

Conflicts:
	doomsday/client/include/ui/dd_input.h