Merge pull request #1029 from nallar/master

Change fix for #157 (commit: 9a83e05 ) not to make two map lookups.
Add new experimental 'srgnames API jar' for plugins

Plugins for MCPC+ can build against this jar as a library, to use 'native'
mappings (as an alternative to version-shaded NMS), avoiding the need to
remap plugins and also for obfuscation-independence (ala FML runtime deobf).
Refactor MCPC+ classes into za.co.mcportcentral package
Fixed mystcraft migration for world_myst/DIM_MYSTXX to new structure.
Fix initialization of biome mappings before plugins load. Fixes #449.

Custom mod biomes mappings were added in CraftBlock's static initializer,
which executes whenever the class is initialized. However this does not
necessarily run before plugins initialize. Change the initializer to
a static method instead, and explicitly invoke it before plugins load,
after all the mods are loaded. As part of this change, move dumpMaterials
to occur after MinecraftServer is initialized.

Fixes mod biome support in plugins using the custom biomes on load,
test plugin in #449.
Avoid sending a second PlayerLoginEvent during initial login. Fixes #756
Spigot patch: Update Netty to CR3. Fixes #810, #943, #974

Includes latest Netty patches up to Spigot build 871.

https://github.com/EcoCityCraft/Spigot/blob/master/CraftBukkit-Patches/0021-Netty.patch
Reverted some Netty changes and downgraded to CR1 due to login issues.
Reapplied Netty patch with some minor changes to fix login issues.
Changed actualDimension in moveToWorld to use passed dim as default.
Removed Netty. Fixes #943, #974, #1007, #1050

Due to random issues with forge clients being disconnected, forge mods not
operating correctly and login issues, I have decided to remove Netty until
further notice. I will test out Netty at a future date and decided whether
or not to try it again.
Hotload dimensions for CraftServer.getWorld()
Removed double call to MinecraftServer.worlds.add() (memory leak + worlds get unloaded twice on shutdown)
Merge pull request #1060 from OniBait/master

Hot load dimensions on CraftBukkit call and fix possible memory leak
Fixed populators not being added to overworld. Fixes #1061
Added bukkit to forge mappings in bukkit.yml to help with old configs.

If you are using essentials and noticed many player sethomes were no
longer working, it was due to world names being changed to forge. I have
added a bukkit-to-forge mapping section in bukkit.yml to help with this.
Just add the old bukkit world name with the new forge name and it should
work. Towny does not call the same method as essentials so this will not
work for that.
Fix Galacticraft player base server instance patching. Fixes #1050.

Galacticraft, as a coremod, patches attemptLogin() to replace
EntityPlayerMP with its own class. This works since the dev has
explicitly added MCPC+ support but changing the method signature
to fix #756 caused Galacticraft to be unable to find the correct
code to patch.

To solve this, we preserve the original attemptLogin() signature
and method body, adding a new attemptLoginNoEvent() method to
temporarily set an instance variable (vanillaLoginCheck) during
login, rather than passing this information in a parameter. This
allows Galacticraft to find and patch the method, fixing the
"Warning: Could not find player base server instance for player"
spam when right-clicking a rocket.
Fixed wrong vanilla method name in ServerConfigurationManager. Fixes #1076
Added proper support for Custom EntityTypes. Fixes #16, #361

All custom mod living entities will now use the CraftCustomLiving class
in order to relay information to plugins. This class is dynamic and will
return the proper type through getType() for the specific entity that sent
the event. All names will be stored as ModName.EntityName to avoid conflicts
with other mods. For example : If you get hit by an Ogre from MoCreatures,
the Damage event type will now display it as MoCreatures.Ogre. Hope
this helps plugins =).
Update to Forge 7.8.0.716
Add MinecraftForgeClient for diff visibility