first changes for enchanting (not finished)

- added enchanting table block handler and added it to the blockhandler
- added enchanting window
- drop item in the slot 0 when the player close the window
- added enchanting packet (1.7 only)
- some more...
Some updates for enchanting
removed hook from enchanting commit
Some updates for enchanting (2)
added EnchantItemPacket to older Protocols
Sort of implementation of chunk sparsing

Issues:
* Chunks are flipped
* Slow/inefficient/badly coded
* Only blocktypes are 'compressed'
Performance improvements and chunk flipping fixed
Fixed some bugs

* Fixed undefined behaviour
* Fixed compression failure
Merge remote-tracking branch 'origin/master' into chunkysparsing
Speed and memory improvements

* Changed array to be continuous, so no more layer splitting
Nibbletypes are compressed

+ Added nibble compression
* Fixed an off by one
Blocklight and skylight now compressed
Attempt to fix errors
Added Enchantment-Slot-Level generating
Fixed merge conflict
Merge remote-tracking branch 'upstream/master' into Enchanting
Added deleted things for merging
Fixed Errors
Modified comment
Maybe speed improvements?

* Use a single index to determine from when to begin copying data
* Use heightmap to determine first nonair block