Added block placement handling for several blocks (see #119).

Handling for stairs, chests, ender chests, slabs, hay, logs, and quartz.
Improved canAbsorb and added canOverride, implemented for slab, fire, and tall grass.
Made warning on incorrect MaterialData more uniform, improved formatting.
Included a copy of the GPL in the distribution (fixes #147).
Limit player yaw to values in the [0,360). Fixes #173.
Added .gitattributes to enforce LF line endings.
Fixed skylight in empty ChunkSnapshot sections to be 15 instead of 0.

Also, fixed logic for isSectionEmpty.
Added missing Override annotations, fixed GlowWorld and GlowPlayer line endings.
Fixed loading of blocks with high IDs.
Implemented artifact upload with travis.

Signed-off-by: William Lebel <lebelwilliam@gmail.com>
Added remapper plugin for Bukkit backwards compatibility.
Switched to building against Glowkit.
Fixed Travis publication.
Made logger use more uniform (fixes #255).
Fixed disconnect when sending empty chunks.
Changed sound radius to be min(volume * 16, 16).
Added block placement handling for ladders and vines (see #119).
Added CONTRIBUTING.md (thanks @JeromSar).
Added call to LightningStrikeEvent.
Handle target blocks gracefully (fixes #172).

Sometimes, player.getTargetBlock() throws an IllegalStateException. This
is usually the case if players stand at height 127 and look up when
left-clicking. The exception can be safely caught and treated as an
invalid block (air in this case).