Add Events within the spawning system to allow additional control

* LivingMaxCanSpawnEvent 
<br>Allows overriding of the getMaxSpawnedInChunk. Required by spawn control mods to allow users to actually control the distrbution of spawned mobs similar to what minGroupCount/maxGroupCount do for chunk spawned creatures.

* EntityCountEvent 
<br>Allows a mod to supplant the countCreatures check method with its own values. Required by spawn control mods when changing creature spawn lists so that they still count towards the cap.