Adds the ability to look up players by UUID. Adds BUKKIT-5071

This commit adds the ability to look up a player by their uuid by calling
Server.getPlayer(UUID).  This is necessary for plugins which use
persistent player data.  Plugins must now store the player's UUID instead
of user name, so they can keep track of user data across username changes,
which means a method for looking up players by their UUID is necessary to
compliment the name based lookup.
Merge branch 'master' of github.com:Renlar/Bukkit into UUIDLookupPatch
Added SpawnReasons for nether portals and dispensers. Fixes BUKKIT-3148

Previously any entities spawned through dispensers (monster eggs) or
by nether portals were given the incorrect SpawnReason of SPAWNER_EGG.
This made it impossible to distinguish what exactly happened in regards
to the creature being spawned.

With the additional two SpawnReasons, plugins can identify sources of
creature spawning more easily and accuratly.