Chat Format -- Non-JSON Output

The chat formatter is now capable of rendering messages as either JSON (with formatting etc.) to be sent to Minecraft clients, or plain text (for display on the console, for example).
Server Stop Synchronization

The server now guarantees that all Stop requests (which are asynchronous to avoid deadlocks) have completed before it allows its destructor to run.
PanicOnThrow

Added a helper template to the Server class which allows actions to be executed and, if they throw, for the server to automatically panic.
Server Documentation

Added documentation to the Server class' Destroy method.
Shutdown

Added a command which allows server operators to shutdown or restart the server.  These actions may be either immediate or scheduled to be performed in the future.  They may trigger a server wide countdown or not.  They may be cancelled after being scheduled.
Chat Formatting Fix

Fixed a bug which was causing all entries in the chat log to be prepended with a space.
/info Fix

Fixed a bug which was causing the /info command to erroneously reject null clients.
/log Fix

Fixed a possible segmentation fault in the /log command.
Command Overhaul

Overhauled the Command class so that it's now possible for commands to be issued independent of an associated client.

This enables other modules to issue commands when a client may not be associated with that command, and allows for front-end command integration.

Added an interface -- CommandInterpreter -- which allows command interpreters to hook themselves into the Server class, for consumption by front-ends.
Chat Overhaul

Overhauled chat-related modules so that they handle "SERVER" sending/receiving messages properly/better.

Added a ChatProvider interface which enables providers of server-wide chat to hook into the Server class, which the front-end can then hook into in turn to send server-wide chat messages.
Server Include Cleanup

Cleaned up the #include directives in server.hpp.
Front-End Overhaul

Removed the old test front-end.

Added a new front-end, which is fully interactive (commands may be entered, both the server log and chat log may be viewed) and uses a custom-written terminal interface to enable seamless simultaneous, asynchronous output and user input.