Makefile Overhaul

Attempting to make the makefile more effective and reduce the number of recompilations necessary.
Command Handling

Introduced a new command handling mechanism.

This mechanism is not only more modular than the previous approach (which will be brought under the umbrella of this new approach) but also solves the problem of an integrated help and integrated autocomplete.
Command Cleanup

Removed unused includes from command.hpp.
Information

Added a new module -- InformationModule -- which provides the /info command using the new command interface.  This module in turn can have modules which hook in and provide information about various server components.

This supercedes the old information paradigm, where information providers independently parsed incoming chat messages, deciding whether they should handle them or not.

This approach has the advantage of centralizing/standardizing a lot of shared code (parsing, permissions checking, etc.) reducing the development time needed to add new information providers, and the tendency for implementations to be incomplete/non-standard/contain errors.
Command Bugfix

Command-handling code was not properly checking whether a user had permission to execute a given command before suggesting it as an autocompletion.
Module Cleanup

Removed the flat world generator module.  It's an out of date module based on the old world generator code.
Data Provider Information Provider

Added an information provider for the server's data provider (/info dp).

This is identical to functionality which was previously present, but brought under the new command-/information-handling paradigm.
Bans Information Provider

Added an information provider for banned players/IPs/IP ranges.

This is identical to functionality which was previously present, but brought under the new command-/information-handling paradigm.
Server Operators Information Provider

Added an information provider for server operators.

This is identical to functionality which was previously present, but brought under the new command-/information-handling paradigm.
Makefile Update

Updated Makefile so that changes in the past few commits will be properly built.

Newly-added rules are much more thorough than old rules, in keeping with my push to make Makefile more comprehensive/useful.