Add events for new inventory features in 1.5

This commit brings the InventoryClickEvent in line with the new Minecraft changes in 1.5.

InventoryDragEvent (thanks to @YLivay for his PR) is added to represent the new "dragging" or "painting" functionality, where if you hold an itemstack and click-drag over several slots, the items will be split evenly (left click) or 1 each (right click). The InventoryAction enum is used for all the other new actions. Additionally, handling of creative inventory editing is improved with InventoryCreativeEvent, and handling of numberkey presses is also improved within InventoryClickEvent and CraftItemEvent.

Also, cancelling a creative click now displays properly on the client.

Fixes BUKKIT-3692, BUKKIT-4035, BUKKIT-3859 (new 1.5 events), and Fixes BUKKIT-2659, BUKKIT-3043, BUKKIT-1479, BUKKIT-1450, BUKKIT-2659, BUKKIT-2897 (creative click events).