Clarify dye and wool color datas in DyeColor. Addresses BUKKIT-2786

DyeColor used the wool data for getData(), which is very misleading based
on class name. The old method has been deprecated and replaced with
getWoolData() and getDyeData() for the appropriate types of data values.

The MaterialData classes Dye and Wool were updated appropriately,
especially Dye innapropriately using a DyeColor data value compensation.

Unit tests were added for the new methods, as well as the getColor on Dye
and Wool.
Switch DyeColor firework Colors. Fixes BUKKIT-3382

The firework colors were based on the respective wool data values. This
means the colors were in reverse order.
Added negative id check to Material.getMaterial(int). Fixes BUKKIT-3414
Negative id values would try to access the array out of bounds and throw an java.lang.ArrayIndexOutOfBoundsException.
Update Bukkit to Minecraft 1.4.7
Updated version to 1.4.7-R0.1 in pom.xml for Beta.
Updated version to 1.4.7-R0.2-SNAPSHOT for development towards next release.
[Bleeding] Add experimental support for entity portal traveling

EntityPortalEvent is called when an entity is about to portal to a
new location. This event is cancellable on top of being able to
change the exit location.

EntityPortalExitEvent is called when exiting the portal, allowing
for adjustment of the exit velocity.
Improve javadoc in 26 files.

Addresses:
BUKKIT-1643, BUKKIT-1868, BUKKIT-1846, BUKKIT-2632, BUKKIT-3196,
BUKKIT-3187, BUKKIT-3198, BUKKIT-3200, BUKKIT-3201 and BUKKIT-3417.
Don't try listing something that may not exist. Fixes BUKKIT-3471

The player name may not be provided, in which case the command will
fail hard.
Only use TravelAgent if supplied; Addresses BUKKIT-3466

If there is no TravelAgent assigned, it can not be used.
Fix invalid integers in spawnpoint command. Fixes BUKKIT-3509

getInteger returns min value on illegal number formats, so we change
behavior to throw an exception when requested.
Spigot POM Changes
Measure the duration of the entire timings run.
Add CustomTimingsHandler for adding new CraftBukkit custom timings
Make the plugin class loader thread safe
Revert "Deprecate methods in JavaPluginLoader and PluginClassLoader"

This reverts commit 203de4180b40f069d2c175d763476bd4ce338c76.

Conflicts:
	src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
Libkit pom changes.
Signed-off-by: Chris Sanders <zidane@outlook.com>