Use entity UUID instead of EntityID for metadata. Fixes BUKKIT-3582

The entity id is a non-unique, non-persistent value, and will cause
entities to lose their respective meta data on chunk unloading, and
teleportation.
Set CraftTravelAgent.DEFAULT to a non-null value. Fixes BUKKIT-3578

Currently, CraftTravelAgent will call s() on the passed-in WorldServer in order to set DEFAULT. However, s() will always return null at this point, because WorldServer.P will still be null, as it is set after the constructor is called. Instead, we set CraftTravelAgent.DEFAULT to the instance that is being constructed.
Check TravelAgent.findOrCreate(Location) for null; Fixes BUKKIT-3590

If a custom TravelAgent is used and returns null for findOrCreate method
a NullPointerException will occur.
Conflicts:
	src/main/java/net/minecraft/server/PlayerList.java
Close inventory on teleport. FIXES BUKKIT-3021.
Implement PlayerItemConsumeEvent. Adds BUKKIT-2349
Add proper logging for custom channel exceptions.
Use the correct CB object for ContainerBrewingStand. Fixes BUKKIT-3357
Fix compilation error with exception names
Update CraftBukkit to Minecraft 1.5
Use proper naming convention for boolean methods.
Handle the newly refactored minecarts.
Remove duplicate place logic for snow. Fixes BUKKIT-3756
Always consume bonemeal when used on a sapling. Fixes BUKKIT-3755

In Minecraft 1.5 saplings do not grow with a single use of bonemeal anymore.
Our code assumes they will and only takes away bonemeal from the player
when the tree grows successfully (not cancelled by a plugin). Instead we
now always remove a bonemeal even if a plugin is the reason a tree didn't
grow as this matches the vanilla logic more closely.
Limit mob names to 64 chars to avoid client crash. Fixes BUKKIT-3753
Don't set health directly, will interfere with scoreboard system.
Use Chest block state for trapped chests. Fixes BUKKIT-3762
Ignore invalid inventory slots. Fixes BUKKIT-3737
Filter data for items that shouldn't have it and filter wool.

We used to fall Item.filterData() for this but that method is meant for
converting item data to block data during placement and does the wrong
thing for this case. Instead we just see if the item should have data and
if not set it to zero. We also have to filter wool data explicitly because
clients crash when given invalid wool data.
Filter negative values for all items.
Comment out vanilla debug message.