Added InventorySwapEvent - BUKKIT-3386

The InventorySwapEvent is fired when a Player swaps items to/fro the hotbar to/fro the inventory using the numberkeys. This was a feature added in Minecraft Snapshot 12w40a. In previous bukkit versions, there was no way to detect this, however I noticed that the numberKeys were sent through protocol 102 in the MouseButton variable. Also HoldingShift equals 2 when numberKeys are pressed.

InventorySwapEvent extends InventoryClickEvent because it uses mostly the same methods. getHotbarRawSlot() returns the raw slot number of the slot which was swapped to. getHotbarSlot() returns the hotbar slot which is being swapped with the item under the cursor. (from 1-9).

Fixes: https://bukkit.atlassian.net/browse/BUKKIT-3386
CraftBukkit PR:
Test Plugin: http://pastebin.com/nrfwiAPD

Signed-off-by: seifpic <seifpic@hotmail.com>