Added ApiKeyBinding

Sorry to do this but I have one more vanilla class to add.

This one adds a way for mods to register their own KeyBindings and have them listed in the settings gui along with the others.

I also rewrote the documentation for the Mod class to give a better explanation and some more information.

Edit: I've changed it slightly so that we don't have to modify GameSettings anymore.
Although this means that key bingings have to be loaded from the options file a second time after the GameSettings have been loaded. Mod added bindings also will stop showing up in the gui if anyone changes the Minecraft.gamesettings after it has been loaded.