Add more information about changing PermGen size
Implement Threaded Bulk Chunk Compression.
This offloads chunk compression to a new thread, which should help with the pauses often seen when teleporting large amounts of players.
Allow Configuring Chunks per Packet. This enables server owners to cram more chunks per packet, potentially leading to higher compression ratios, thus saving bandwidth and load time.

This is currently set at the Vanilla default value of 5, however initial testing seems to suggest there could be good performance / usability / bandwidth gains by setting it to its maximum value of 32768. Testers are welcome to experiment with this option, beware the placebo though!
Only create a single executor / compressor instance.
Only 1 class is compressible, don't bother interfacing.
Implement a compressed chunk cache. This still needs a lot of work to figure out a good mechanism for looking up previous chunks, however at the moment when coupled with a high bulk chunk limit, it can be effective for solving lag issues.
Use simpler iterator
[Experimental] - Enable compressed bulk chunk cache.

Sort chunks a final time before sending. This gives the advantage that chunks will load as close to the player as they possibly can, and then move out, as well as increase the cache hit rate when using smaller bulk chunk limits such as the default of 5.
Fix unit tests
Merge pull request #108 from Dmck2b/PermGenLink

Add more information about changing PermGen size
Use a crc32 of all the blocks in the chunk as our hash key. This is much more unique.
Merge remote-tracking branch 'spigot/master'