API|Uri: Added new Uri constructor Uri_NewWithPath3

A default scheme is set for the new Uri before then parsing a cstring
representation of a Uri, bypassing the resource class mechanism.

This provides a convenient method of constructing a Uri with a default
scheme that may be overridden with the cstring argument.
ACS|Cleanup: Use Uri_NewWithPath3
libcommon: Provide a Reader/Writer to all save state (de)serialization routines
Refactor|ACS: Implement ACScript (de)serialization in C++ with Reader/Writer

Also, ACScript_Thinker() now calls the C++ method ACScript::runTick()
Refactor|libcommon: Switched more libcommon source files to C++
Refactor|libhexen: Switched p_pillar.c and p_waggle.c to C++
Refactor|libcommon: Switched p_door.c to C++
Refactor: Switched each games' p_lights.c to C++
Refactor|libcommon: Implement thinker (de)serialization in C++, with Reader/Writer

Todo: mobj_t and Hexen's polyevent_t
Merge branch 'master' of ssh://github.com/skyjake/Doomsday-Engine
Refactor|libcommon: Switched p_xgsave.c to C++
Refactor|ACS|Hexen: Implement ACS state (de)serialization in C++, with Reader/Writer
Refactor|Hexen: Implement sound sequence (de)serialization with Reader/Writer
Refactor|XG|libcommon: Implement XG plane-mover (de)serialization in C++, with Reader/Writer
Merge branch 'master' of github.com:skyjake/Doomsday-Engine
Merge branch 'ui-multiplayer'
Windows|Fixed|libappfw: Missing export
Windows|Fixed|libgui: Accessing main window even if it doesn't exist

During a fatal error shutdown, DisplayMode was asked to set the color
transfer function after the window had been disposed of.
Fixed: Build error
UI|Client: Close MP server info popup when joining the server