Update calls to DyeColor getData and getByData. Addresses BUKKIT-2786

These two methods are now deprecated and replaced by the strictly
equivalent calls using wool data.
Update unit test to reflect firework color fix. Fixes BUKKIT-3382

The ItemDye color-int array uses dye data values, not wool.
Spigot for 1.4.6. This commit has undergone basic testing and appears to now be safe for careful production usage. Please report any bugs to IRC as soon as you encounter them. Long live Spigot!
Update Maven Shade Plugin to version 2.0. Fixes BUKKIT-3213
Address BUKKIT-3286 by firing the inventory close event when a secondary container is closed due to the player entity being destroyed. This covers all edge cases such as server stop / player kick / player quit.
Update item merge logic
Try old 1.4.5 dig speed algorithm for better results.
Add dependency-reduced-pom.xml to .gitignore
Try old 1.4.5 dig speed algorithm for better results. (reverse-merged from commit ea993ead2ff71074204f7cb5ad4b5ade4e0c88a2)
Include NibbleArray from mc-dev for diff visibility
Implement 'lightening' of NibbleArrays - only allocate buffers when non-trivial value
Saving from 40-45% of memory use by chunk section data.

Finish up NibbleArray lightening work - use for Snapshots, reduce copies

Fix nibble handling with NBT - arrays aren't copied by NBTByteArray