Fire PlayerInsideOpaqueBlockEvent to allow cancellation of the client fo...

...rcing the player into first person and player suffocation. Also fixes EntityPlayerSP's push out of block function to use height of the entity rather than being hardcoded

Don't ask about the EntityPlayer.java.patch, my patch generated it like that and i have no idea why.