Add PurchaseStep events

And make OrderStateResolver listen to it
Merge pull request #1375 from winzou/fix/order-resolver

Add PurchaseStep events