Changed the signitures of the following to use interfaces:
GetPlacementBlockTypeMeta
OnPlaced
OnPlacedByPlayer
OnDestroyed
OnNeighbourChanged
NeighbourChanged
OnUse
CanBeAt
Check
If a coordinate was queued, and then the block there was broken, it
would reappear: double items!
Also now just sets meta if previous and current blocktypes matched.