Put correct source block in mushroom spread event. Fixes BUKKIT-3354.

As described in BUKKIT-3354, BlockSpreadEvent.getSource() will usually not return the correct source block when a mushroom spreads. The coordinates of the source block are lost during the spreading process. This modification preserves these coordinates and populates the BlockSpreadEvent with the correct block.