Module management commands and unloading enforcement

This pull request implements the following commands:
- MODULES
- LOADMODULE
- UNLOADMODULE
- RELOADMODULE

It also ensures that any non-core modules that work with modes will unset said modes when they are unloaded. However, to make this work I had to make a slight change in the order of `unloadModule` in `IRCd`. It used to remove the mode chars from the dictionaries before calling `fullUnload`. This wouldn't let modules unset their modes, as txircd was confused into thinking the mode chars they were trying to unset did not exist.
Please clarify that the module is now unloaded, since that may not be entirely clear.