[B+C] Add BlockMultiPlaceEvent to handle 2 or more blocks.

###The Issue:

Currently, BlockPlaceEvent only supports a single block but there are
situations where 2 or more blocks need to be sent to plugins such as with
an ItemBed.

###Justification for this PR:

Provide a single block event that supports 2 or more blocks. This allows items such as ItemBed to be handled properly by plugins.
Note: The first block added to this event will be passed to BlockPlaceEvent.

###PR Breakdown:

After an item is processed in Item.onPlace, if 2 or more blocks were captured, a single BlockMultiPlaceEvent will be called for plugins. If this event is cancelled, all blockstates will be reverted.

###Testing Results and Materials:

N/A

###Relevant PR(s):

CB-1313 Bukkit/CraftBukkit/#1313