Performance improvements, bug fixes and simplification.

- Corrected uses of .toArray() to avoid instantiating two arrays
- Use Collections.addAll when adding an array to a collection
- Correct dungeonloot chances for golden apples, redstone and records. Were accidentally made octal, 050 =/= 50
- Actually set hasInit = true when used (Maybe this should be a static block, instead of init method?)
- Removed type parameters where they can be inferred
- Removed some redundant casts
- Use System.arraycopy() instead of manually copying the enderman carriable block list
- Simplified logic in liquid APIs imported from BC.
- Correct InitNoiseField event to actually set sizeY
- Removed unnecessary local variable val from ShapedOreRecipe constructor
- ForgeHooksClient now actually displays the texture preloading warning, previously used .equals() incorrectly.
- Fixed DimensionManager.registerProviderType()'s duplicate key check - it would never return true, checking if the values contained a key!

Signed-off-by: Ross Allan <rallanpcl@gmail.com>