Merge remote-tracking branch 'upstream/master' into custom_products
Added abstract base class for Product.

Defining the manager on an abstract base class means subclasses will
inherit it instead of having to explicitly define their own.
Added product_model field to Category.
Merge branch 'master' into custom_products
Merge remote-tracking branch 'upstream/master' into custom_products
Merge remote-tracking branch 'upstream/master' into custom_products
Remove content_model from Category
Merge branch 'master' of github.com:stephenmcd/cartridge into custom_products

Conflicts:
	cartridge/shop/views.py
Start work on implementing reservable product type
(cherry picked from commit 6ea1a86d35e21e3c49ce2274c393458bf869076e)
Added bare bones reservation model and setting for day of week option, which would be used to set different prices for different days
(cherry picked from commit 24d5f5bf04c42c88614b420fa7a3095c73a7314e)
Add build and dist to gitignore
(cherry picked from commit a1acd83b6c4dbc6dc6aa6c7d0d858839490ab9cd)
Redesigning reservable feature. From/to dates added to product and cart forms/views. Dropped idea to have different day prices as variations.
(cherry picked from commit 2f919f4652c12fb052abf9c608d5c17a83c3ae7c)
Revert day of week shop option type from commit 24d5f5bf04c42c88614b420fa7a3095c73a7314e
(cherry picked from commit 5a00b80416d9027a120989d8fd080a7b409026bd)
POC getting reserved dates from hook great success. Hook code must implement reservation module, Manage class, list_reserved_dates method (month, year) and return {years:{months:[days]}}
(cherry picked from commit 3bec004f0716cab667dd2b4f48a4ee059df0f370)
Reservations now shown on product page in calendar, POC level only
(cherry picked from commit e47213cb59cba92548214c8fc5a43b2303c573b0)
ReservableProductReservation date is now Date not DateTime. Some fixing of JS
(cherry picked from commit 8e0b5f86725bbb43034e6c95c1131c8b154035d2)

Conflicts:
	cartridge/shop/models.py
Forgot to remove some unnecessary imports
(cherry picked from commit 844e1ea94f0c721bc9f81375fcde82b73c8c294d)

Conflicts:
	cartridge/shop/models.py
Disable add to cart button when dates cannot be reserved
(cherry picked from commit 6600c609ae6e38cd5fae1e55c568afa0e5ae91d9)
Models to link reserved days to cart and order
(cherry picked from commit bd46e8ea453a25aecf0b80a21511317a19561a44)
Implement reservable product related customization to stock checking and cart handling, WIP
(cherry picked from commit 8da06fc154cf85462811e30fd688fb7e76a98c9d)