Module Unloading Bugfix

Fixed a bug which was causing a SIGSEGV during server shutdown due to OnShutdown and mods->Unload() being fired in the wrong order.
Makefile Fix -- Players

Fixed an error in player.mk which was causing mcpp_player.dll to be unreliably and incorrectly rebuilt.
Makefile Fix -- Remove -march=native

Removed -march=native from the release settings in Makefile.

GCC was generating code that wasn't compatible with my CPU (the opposite of what -march=native is supposed to do...).
Command Sort Order Fix

Commands were being inserted in the wrong order, and thus were appearing in /help in reverse sorted order rather than sorted order.
WorldInfo

Added WorldInfo class to world.hpp.
Server Overhaul

Overhauled the Server class to improve its functionality in several areas, as well as to enforce a better separation of responsibilities.

Previously the Server class inherited from RLeahyLib::Service, which meant that in addition to managing startup/shutdown and providing shared data/components for all modules, it was also a service/daemon container.  This conflicts with the responsibility of a front-end, whose job it is to host the server.

Accordingly the Server class no longer inherits from RLeahyLib::Service, and many of the things it did internally to cope with this inheritance combined with the need to run interactively have been removed.  This gives the Server class a much cleaner interface -- Start, Stop, and Restart.

Added hooks so that restart requests are propagated to the front-end (which can then clean the server up, recreate it, install its hooks agan, and start it again) as well as panics (so the front-end has the option of attempting some kind of recovery or outputting a useful diagnostic).

Overhauled the panic system.  There are now three overloads of Panic -- one which takes no arguments, one which takes a string describing the reason for the panic, and one which takes a std::exception_ptr so the exact exception which caused the panic can be captured.  Panic will attempt to invoke a callback from the front-end, and, failing that, will simply abort the program -- far cleaner than the previous approach of attempting to shut the server down when the server is in an unstable state.

Also overhauled the debug/protocol analysis/verbosity system.  Individual packets can now be debug logged in a specific direction, instead of the direction being global.  In addition all debug-related functionality is thread safe so that debug options can be changed while the server is running.

Switched the Server class entirely over to the singleton/factory paradigm.