Added CommandPermissionEvent

Added a CommandPermissionEvent. It's used for mods to check a command's permission, such as the vanilla commands, before CommandEvent is called or by doing it through commandMap, the hacky way.

It returns a result, ALLOW to allow the command to be used, DENY to deny use or DEFAULT for ICommand.canCommandSenderUseCommand(ICommandSender sender) to be used.