Fixed|libcommon: Compiler warnings (unused arg/expression result)
libcommon: Convenient method for returning the game identity key
Refactor|libcommon|SaveInfo: Extracted SessionMetadata from SaveInfo
libcommon|SaveInfo: Cleanup
Refactor|libcommon: Began removing the SaveInfo instance

The functionality which remains in this component does not require
an instance object as such, an API with a savegame identifier will
suffice.
libcommon: Extracted SavedSessionRepository from SaveSlots
Refactor|libcommon|SavedSessionRepository: Require that a map URI is always specified when forming file paths
libdeng2|SavedSession|SavedSessionRepository: Moved the saved session repository into libdeng2, revised metadata

Saved session metadata is now represented with de::Record and the game
rules are converted to/from this representation as needed when a saved
session is written/read.

ResourceSystem owns the repository (which in turn has ownership of the
saved sessions).

While the code builds without error it most certainly does not yet work.
There is still much to be done here:

- Saved sessions are not available in Ring Zero because reading of the
metadata currently depends on the game state reader(s) which are only
available when a game is loaded.
- Existing savegames are not found because the file extension (and, in
Hexen's case the /runtime subdirectory) is not known.
- SavedSession assumes that saved state is split into multiple files,
with the metadata and game state separated from the map state(s), which
use additional files (similar to Hexen).

TODO: Extract vanilla game state interpretation into a new command line
app which simply converts the given file set into a new savegame format
supported by this system.
TODO: Split the serialized map state for Doom/Heretic savegames into
separate files and utilize a common engine-side logic for reading the
metadata from the game state file.
Refactor|libdeng2: Moved "saved session" components into the game namespace

These are hardly 'core' components.
libdeng2: Changed license of the "saved session" components to LGPL 3
Merge remote-tracking branch 'remotes/origin/master' into savegame-refactor

Conflicts:
doomsday/libdeng2/game.pri
Refactor|libdeng2|SavedSession: Use pimpl-friendly audiences for game::SavedSession
Merge remote-tracking branch 'remotes/origin/master' into savegame-refactor
Merge remote-tracking branch 'remotes/origin/master' into savegame-refactor
Added: Savegame Tool console application

The Savegame Tool is a console utility for converting legacy savegame
files into a format recognized by libdeng2's SavedSessionRepository.

Presently this supports native Doomsday savegames up to and including
save version 13.

Todo: Support conversion of vanilla Doom and Heretic savegames.
Todo: Remove dependency on libdeng1.
Todo: Implement mechanisms for inspecting savegames.
Todo: Robustness improvements and cleanup.
Savegame Tool: Cleanup
libcommon|SaveSlots: Updated wrt saved session file format changes
libdeng2|SavedSession: Updated wrt saved session file format changes
Refactor|libdeng: Renamed IGameStateReader as IMapStateReader

The saved session game state (i.e., session metadata) will soon be
read on engine side. The serialized map state is now stored within
separate files, the format of which can be recognized without the
need to defer the decision to a game plugin.
libdeng2|SavedSessionRepository: Trying to figure out how to index the zipped saved session file