Refactored Forge's BlockBreakEvent to fire bukkit event.

* Prevent crash if mod sends FakePlayer through ForgeHooks.onBlockBreakEvent.
* Fixed some issues with previous patch.
* Cleaned up code.

This will allow us to fire a bukkit BlockBreakEvent for any mods that
invoke forge's Block.BreakEvent directly.