Reflective Commands for TShock and plugins - automatically add commands to Commands.ChatCommands (TShockAPI and TerrariaServer)

This adds the `virtual bool ReflectiveCommands` to plugins, which toggles it.
Most of it is going to be implemented in TShock, which I have made a pull request for as well.

When TShock is loading commands, it will scan plugins with this enabled for command methods, and automatically add them to `Commands.ChatCommands`.

Command methods are public and are labeled with a `CommandAttribute` to tell TShock to reflectively search for them. For example:

    [Command(Permissions.kick, "kick")]
    public static void Kick(CommandArgs args)

This has been done to each of TShock's native commands in my push to TShock, and the changes which will affect plugins are mostly done in TShock itself.