Refactor|libhexen: Prefer the term 'hub' wrt map progression in MAPINFO

The term 'cluster' is less descriptive and map authors generally use
'hub' in any case.
Refactor|libcommon: Extracted high level savegame management into new C++ class 'SaveSlots'

At present the associated SaveInfos will continue to be owned by this
class. In the future these should be referenced from an index provided
by libdeng2's file system, which has none of the restrictions implicit
in the original games' slot-based mechanism.

Ultimately, SaveSlots will amount to little more than a mapping from
file paths into a finite set of 'slots'.

Todo: Cleanup
libcommon|SaveSlots: Added a C wrapper API for SaveSlots and made use of it
libcommon: Cleanup
libcommon|SaveSlots: Cleanup
libcommon|SaveSlots: Ensure all SaveInfos are free'd when SaveSlots is
libcommon: Catch and log errors thrown during savegame loading
libcommon|SaveInfo: Cleanup
libcommon|SaveSlots: Throw an error if an invalid savegame slot is specified
libcommon|SaveSlots: Cleanup
Refactor|libdeng1|libdeng2: Relocated Garbage to libdeng2

Garbage remains a C API although it has been moved to libdeng2.
From here it is accessible everywhere. Notably, libappfw no longer
needs to link against libdeng1.

The implementation was changed to use Lockable when recycling.
Merge remote-tracking branch 'origin/master' into oculus-refactor
libgui: Added swap control for X11, debugging Canvas recreation

GLShader, GLProgram, and GLFramebuffer now support recompilation/
has any effect on the OpenGL errors occurring after switching the Canvas
(it didn't).

GuiApp has an audience that gets notified when the Canvas is recreated.

Added swap control for X11 using the GLX function for this purpose so
that Canvas recreation is not necessary when changing vsync on X11
(which was causing OpenGL errors).
Fixed|libcommon: Passing a string argument to App_Log

Only POD data accepted.
Fixed|GLSandbox|Unix: Deploy testpic
Client|X11: Apply swap control via GLX for vsync
Debug|Unix: Investigating Canvas recreation issues