Added server-side EnchantItemEvent

This is a server-side EnchantItemEvent that fires when a player enchants an item with an enchanting table. Modders may change the output or cancel the event. 

This is a re-pull of #1407 but on the branch new instead of master.