Interpret world seed as number if possible (fixes #427).
Fetch UUIDs from Mojang if needed (fixes #227, fixes #365).

UUIDs are only fetched if online mode or proxy support is enabled.
Additionally fixes problems when player data files are missing a last
known username.
Fixed or added several broken inventories.

Added GlowInventory#getRawSlots() to handle a protocol special case.
Changed TEContainer to take an inventory rather than an inventory type.
Adds or fixes enchantment tables, anvils, brewing stands, furnaces,
workbenches, dispensers, droppers, and hoppers.
Move code for block rotation out of BlockSign (also used for Skulls and Banners)
Initial work on Banners
Use enum instead of hardcoded magic values
(cherry picked from commit b83837e)
UpdateBlockEntityMessage protocol courtesy of @Aaron1101
(cherry picked from commit ea3532b)
Basically everything for Banners. As of yet, untested.
Formatting fixes
Rotate properly, update on placing, and actually save layers to NBT
Base and Patterns now should never be null, and should hopefully save properly
Make UpdateBlockEntityMessage use Lombok
Styles Checked
Fix broken check for NBT data on banner item