Refactor|libcommon|libhexen: Moved MAPINFO (lump) parsing to libcommon
Refactor|libcommon|HexLex: HexLex::readUri() now returns de::Uri
Refactor|libcommon: Switched p_tick.c to C++
Refactor|libcommon: Use de::Uri with P_SetupMap() and P_InitSky()

As of this commit, usage of de::Uri's C wrapper API is limited to
communication with Doomsday's public APIs.
Refactor|libcommon: Continued removing gameEpisode, gameMap global variables
Refactor|libdoom|libdoom64|libheretic: Switched p_spec.c to C++
Refactor|libcommon: Removed global variables gameMap, gameEpisode

Also relocated game status cvars "map-id", "map-episode", "map-hub"
into common::GameSession
Refactor|libcommon: Removed G_ValidateMap()

Validating episode and map numbers with this kind of mechanism makes
far too many assumptions about the map progression.

Use P_MapExists() to determine map availability. If no map with the
given URI exists, the caller should determine what is to be done in
any given case.
Refactor|libcommon: Consolidated more map progression selection logics
Refactor|libcommon: Hide the "logical map number" concept behind G_MapTitlePatch()

This is now the only place where this map indexing method is used
and as such can be removed entirely once the map title patch is
defined through a better, user-customizable mechanism.
libcommon: Fix case sensitivity issues with map URIs (should not be)
Refactor|libdoom|libdoom64|libheretic: Use map URIs when defining the map progression

As of this commit, the map progression in all games other than those
implemented by libhexen is now defined using URIs.
Fixed|World|WadMapConverter: Build error/warnings