Cleanup
Refactor|UI: Renamed LegacyWidget to GameWidget

This widget's job is to draw the 3D game world. All overlaid UI
elements will be split to another widget.
Refactor|UI|Client: Split GameUIWidget from GameWidget

The new widget handles the drawing of all overlaid UI elements
visible on top of the game's 3D world.
Fixed|libdeng2: Partially notifying a widget tree

When notifying a widget tree and stopping halfway, one has to make
sure the appropriate pre/post notifications still occur.

The requirement is that if pre-notification occurs, post-notification
will always occur, too.
Refactor|libgui: Moved the active rectangle from GLState to GLTarget

GLTarget is a more appropriate place for specifying which portion
of the target should be used for all operations. It also avoids
problems with GL state stack management.
Client|Cleanup: Apply revised GLTarget active rectangle
Client: Added CompositorWidget, testing it in ClientWindow

CompositorWidget uses a texture target for all its children.

ClientWindow is now set up to use a compositor for everything that
is not the game view. This should only be done when necessary, not
always as currently.

GuiRootWidget::addOnTop() was added so that widgets can be added
easily into the compositor or the root if a compositor is not in use.