Fixed several bugs

Added nick and book command (indev). Fixed vanish command to insure that the player is vanished and not using a splash effect.

Added overrides to OfflinePlayer

Change logic for vanish and god in the Player class.

Implemented onNameFormatEvent to assist in changing nicknames, and applying prefix and suffixes (requires PermissionForge for that)

In the current code, excluding the new additional commands. I did a few changes to how things work. Due to the nature of nicknames and how it impact the player name, we changed it so we are using the entityplayer instead of calling by name. This will make it possible to remove the nickname in the event when the player is to have it removed or want it disabled. This makes it possible for any player using a nickname not to get an error when doing a command. We might remove names in the future and stick with UUIDs but for caching and references, names will stick in the player json file. In the future, work on a caching system to map out player names to the nicknames to make it easier to find and remove (or restore) the names of the player.