libgui|GLState: Allow fluently applying a popped state
Cleanup|ClientWindow: Moved wip Oculus Rift drawing to a private method

Also, fixed some issues with the use of GLState:

- This test code is using immediate GL drawing, which means every
  change to GLState has to be manually applied before drawing.
  Managed drawing with libgui's Drawable will do this for us.

- Applied a purple hue to identify that the graphics are coming
  from the offscreen target.

- Clearing the targets appropriately before drawing.

- For the final draw, disable blending and depth test.

Todo: Next problem is to find out why the game-side menu drawer
messes up GL state in such a way that the screen is drawn as purple.