TilePurchaseItemstack is now much less hacky, uses the same interfaces as TilePurchaseEventLever

Signed-off-by: gigimoi <gassmann.gavin@gmail.com>