API and implementation for a service that accepts a collection of items the customer wishes to purchase (e.g. items and quantities), and produces the lowest possible price for that collection of items:
The api is PriceCalculator but instead of receving a List of Items receives a Cart which contains the list of items.