First steps toward extensible Product model.
Look for a custom template for subclassed Products.
Add missing blank line.
ProductAdmin automatically adds custom Product fields.

Thanks to Josh Cartmell.
pep8 and whitespace fixes.
Add method and templatetag to get custom Product classes.
Change stray "Page"s to "Product"s in comments.
pep8 fixes.
Replace "Add Product" button with a select box of Product subclasses.
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