* Changed signature of the store.products and store.retrieve_product
methods. When dealing with unavailable products, the retrieve_product
method now returns a Product object with None as price. The products
method still returns a dictionary, but now its values are never None.
If a product is unavailable then its specific price is set to None.