Add defaults to the counts on the product summary dashboard page
Merged ProductUpdateView and ProductCreateView

There's a lot of code duplication between the two. This is an attempt of
merging the two.

* The additional formsets are now easily overriden.
* is_valid logic is more concise
* is_stockrecord_submitted is now more robust
* Fix: Partner and Partner SKU were optional. They're required, only the
  entire form is optional.
* Fix: StockRecordForm errors are now displayed
* StockRecord is now deleted when clearing all fields
Moving PROMOTION_POSITIONS to defaults.py, allowing customization.

Now I can define new blocks under settings.py, without needing to overwrite an application.
Added doc about OSCAR_PROMOTION_POSITIONS setting

Also grouped promotion settings together.
Clean up some minor issue with JSON
Prevented selecting itself as parent product

It was possible to select the product itself as parent product. The
ProductForm __init__ function now excludes the instance from the
parent-field queryset.

Fixes #586.
Refactor customer app views.

The AccountSummaryView was trying to do too much and included random
bits from the other views. It has been changed to a simple
RedirectView. The redirect target can now be set with
OSCAR_ACCOUNTS_REDIRECT_URL and defaults to the newly-introduced
ProfileView. This leaves the UX unchanged apart from the fact that
was used to be scripted tabs is now separate views.

There was a lot of template duplication between the separate views. I
have introduced a PageTitleMixin and used this to significantly reduce
redundancy (e.g. hundreds of lines). This also led to removing a few
slight inconsistencies regarding headings, breadcrumbs etc.

The new templates have been categorised in subfolders.

Apart from the new ProfileView, I've had to introduce a simple
ProductAlertListView. I've also upgraded the ProductAlertCancelView to
be useful for both canceling from emails etc. as before, but also from
the ProductAlertListView.
Default shipping/billing addresses with one click

Setting a default shipping or billing address used to mean finding the
checkbox in the edit view. It is now possible directly from the
AddressListView via a dropdown.

If an address is a default address for either, it is also marked as such
in the AddressListView.

This commit removes the checkboxes for is_default_for_(billing|shipping)
from the UserAddressForm, hence also hiding them in the address edit views
in the checkout app.
Uniform look for tables in accounts views

They used to have slightly different CSS classes applied to them, which
is now fixed.
Add several small tweaks to accounts views

Marks two forgotten strings for translation, removes redundant code from
templates and fixes one typo.
Tidy up urls.py and settings.py
Use mirrors when pip installing the demo site
Install django-oscar-stores
Add link to stores page in footer
Fork Oscar's statics into demo site

This is the recommended approach:
http://django-oscar.readthedocs.org/en/latest/howto/how_to_handle_statics.html

It does break the link with Oscar's statics though - which may be a
problem if new markup and LESS is introduced.

Set `USE_LESS = True` to your `settings_local.py` to ensure the LESS
files are used to render the page.
Use absolute image URLs in LESS files

Relative URLs (eg '../img/ui/stars.png') are incorrect when the LESS
files are compiled on-the-fly.  When this happens, the compiled CSS file
is located in `/static/CACHE/css` (rather than the usual location of
`/static/oscar/css`).  Hence the relative URL is not correct for images.

This commit simply replaces the "../" with "/static/oscar" which is fine
for the demo site but probably not suitable for core Oscar.  This
isn't a long-term solution as this URL is built with the STATIC_URL
setting which is configurable per project.  Better to have a LESS
variable which defines a "base URL" for included images.
Add products importer and simple books CSV fixture
Add product image importer
Download imports now work
Fix bug with product class lookups in variants

This causes availability messages to fail in templates as an exception
is raised for variant products which don't define a product class.