1. Implement ProductService.Purchase
2. Add unit test