Initial commit - CraftBukkit 1.7.2-R0.3
Add mc-dev files for diff visibility.

- PacketPlayOutMapChunk
- NibbleArray
- OldChunkLoader

Modified files:
- src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java
- src/main/java/net/minecraft/server/NibbleArray.java
- src/main/java/net/minecraft/server/OldChunkLoader.java
- src/main/java/net/minecraft/server/ServerConnection.java
- src/main/java/net/minecraft/server/NBTCompressedStreamTools.java
Fix mc-dev files.

- Add missing 'throws' declaration in PacketPlayOutMapChunk

Modified files:
- src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java
- src/main/java/net/minecraft/server/NBTCompressedStreamTools.java
This project is GPLv3.

- Remove LGPL.txt. LICENCE.txt is relevant.

Modified files:
- LGPL.txt
This is Nukkit.

- Edit README.md
- Edit pom.xml
- Change name of Server implementation

Modified files:
- README.md
- pom.xml
- src/main/java/org/bukkit/craftbukkit/CraftServer.java
Add Nukkit class and configuration.

Modified files:
- src/main/java/fr/ribesg/nukkit/Nukkit.java
- src/main/java/org/bukkit/craftbukkit/CraftServer.java
Disable CraftBukkit auto-updater.

Modified files:
- src/main/java/org/bukkit/craftbukkit/CraftServer.java
Add Orebfuscator by lishid.

https://github.com/SpigotMC/Spigot/blob/master/CraftBukkit-Patches/0065-Orebfuscator.patch
- Configurable hidden blocks
- Configurable replacement blocks

Modified files:
- src/main/java/fr/ribesg/nukkit/Nukkit.java
- src/main/java/fr/ribesg/nukkit/Orebfuscator.java
- src/main/java/net/minecraft/server/EntityFallingBlock.java
- src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java
- src/main/java/net/minecraft/server/PacketPlayOutMapChunkBulk.java
- src/main/java/net/minecraft/server/PlayerInteractManager.java
- src/main/java/net/minecraft/server/World.java
Reduce Chunk compression.

https://github.com/SpigotMC/Spigot/blob/master/CraftBukkit-Patches/0041-Lower-Chunk-Compression.patch
- Increase Bandwidth usage a bit to reduce CPU usage a bit

Modified files:
- src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java
- src/main/java/net/minecraft/server/PacketPlayOutMapChunkBulk.java
Hopper cooldown.

https://github.com/SpigotMC/Spigot/blob/master/CraftBukkit-Patches/0029-Hopper-Cooldowns.patch

Modified files:
- src/main/java/net/minecraft/server/TileEntityHopper.java
Compressed nibble arrays.

https://github.com/SpigotMC/Spigot/blob/master/CraftBukkit-Patches/0012-Compressed-Nibble-Arrays.patch
- Implement 'lightening' of NibbleArrays - only allocate buffers when non-trivial value Saving from 40-45% of memory use by chunk section data.
- Finish up NibbleArray lightening work - use for Snapshots, reduce copies
- Fix nibble handling with NBT - arrays aren't copied by NBTByteArray

Modified files:
- src/main/java/net/minecraft/server/ChunkRegionLoader.java
- src/main/java/net/minecraft/server/ChunkSection.java
- src/main/java/net/minecraft/server/NibbleArray.java
- src/main/java/net/minecraft/server/OldChunkLoader.java
- src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java
- src/main/java/org/bukkit/craftbukkit/CraftChunk.java
Better Chunk tick selection.

https://github.com/SpigotMC/Spigot/blob/master/CraftBukkit-Patches/0005-Better-Chunk-Tick-Selection.patch
https://github.com/SpigotMC/Spigot/blob/master/CraftBukkit-Patches/0061-Fix-some-chunks-not-being-sent-to-the-client.patch

Modified files:
- pom.xml
- src/main/java/fr/ribesg/nukkit/Nukkit.java
- src/main/java/net/minecraft/server/World.java
- src/main/java/net/minecraft/server/WorldServer.java
- src/main/java/net/minecraft/server/Chunk.java
More efficient Chunk save queue.

https://github.com/SpigotMC/Spigot/blob/master/CraftBukkit-Patches/0007-More-Efficient-Chunk-Save-Queue.patch

Modified files:
- src/main/java/net/minecraft/server/ChunkRegionLoader.java
Sync-free Chunk reference cache.

https://github.com/SpigotMC/Spigot/blob/master/CraftBukkit-Patches/0013-Sync-Free-Chunk-Reference-Cache.patch

Modified files:
- src/main/java/net/minecraft/server/World.java
Entity ticking chunk caching.

https://github.com/SpigotMC/Spigot/blob/master/CraftBukkit-Patches/0044-Entity-ticking-chunk-caching.patch
- Cache known loaded chunks so we avoid making a potentially expensive contains call for every single entity in exchange for some simple arithmetic.
- Best case scenario, this cuts down contains call to once per chunk, worst case it adds on some simple arithmetic operations

Modified files:
- src/main/java/net/minecraft/server/World.java
Prevent memory leaks.

https://github.com/SpigotMC/Spigot/blob/master/CraftBukkit-Patches/0045-Plug-World-Unload-Memory-Leak.patch
https://github.com/SpigotMC/Spigot/blob/master/CraftBukkit-Patches/0092-Reduce-memory-of-hiddenPlayers-map.patch

Modified files:
- src/main/java/net/minecraft/server/BlockRedstoneTorch.java
- src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
Highly optimized tick loop

https://github.com/SpigotMC/Spigot/blob/master/CraftBukkit-Patches/0095-Highly-Optimized-Tick-Loop.patch

Modified files:
- src/main/java/fr/ribesg/nukkit/Nukkit.java
- src/main/java/fr/ribesg/nukkit/command/TicksPerSecondCommand.java
- src/main/java/net/minecraft/server/MinecraftServer.java
Add optional tick shuffling

https://github.com/SpigotMC/Spigot/blob/master/CraftBukkit-Patches/0098-Add-Optional-Tick-Shuffling.patch
- This prevents players from 'gaming' the server, and strategically relogging to increase their position in the tick order.

Modified files:
- src/main/java/fr/ribesg/nukkit/Nukkit.java
- src/main/java/net/minecraft/server/ServerConnection.java
Prevent hoppers from loading chunks

https://github.com/SpigotMC/Spigot/blob/master/CraftBukkit-Patches/0113-Prevent-hoppers-from-loading-chunks.patch

Modified files:
- src/main/java/net/minecraft/server/TileEntityHopper.java
Fix TileEntities getting ticked after being queued for removal

Modified files:
- src/main/java/net/minecraft/server/World.java