Base project structure to work on

This includes a ProductController that knows how to display
a product detail view.
Users can favorite a product

A product can be favorited by the user. This introduces
a product repository that is implemented with an
in-memory repository. The implementation should
be replaced with an repository that consumes
a REST API.
Adds a product to the product factory
Adds a method to fetch all the products
Simulates async latency in InMemoryProductRepository

Delays the execution of the code by 200ms to simulate
API latency.
Adds Cocoapods to manage dependencies and ObjectiveSugar.
Implements a UICollectionView for products.
Fixes typo
Adds a delegate to display a product detail view

When a product is selected in the collection view, that
event is passed to the collection's delegate to present
the detailed view of the product.
Adds a second product collection.