Update migration to include PartnerAddress model.

Without this when running schemamigration --auto on partner a migration to
create PartnerAddress is created.

The reason seems to be that this and the 0009 migration have been created
in parallel on two branches as migration 0009, then this migration has been
renamed to 0010, but not "rebased" to reflect that PartnerAddress now
exists. Therefore, when detecting changes for a schemamigration South
assumes that PartnerAddress doesn't exist.

address.country was added by south when I recreated this migration. I think
this change is not strictly necessary, but I am not 100% sure so I left it
it. Same about the length change and the related_name additions.
Allow non-staff users to be associated with a partner.

Also give associated users access to the partner dashboard by giving them
the partner.dashboard_access permission.
Extend permission handling in partner dashboard

Added a 'user role' choice field. Adds and removes both staff status and
dashboard_access appropriately.
Save applies_to_tax_exclusive_prices flag

OfferWizard forgets to save applies_to_tax_exclusive_prices flag at the
end.
Allow shipping_address to be 'None' for an order

I've had an issue with orders that contain only items that don't require
shipping. In this case, the shipping address could be ``None`` which
breaks the ``create_shipping_address`` method.

I've added a test case for it and provided a simple fix. I wasn't quit
sure if the check should be in ``create_shipping_address`` or in
``place_order`` and only call it for an address that is not ``None``.
I've decided to go with the first because it is also simpler to test
this in isolation but am not fussed about moving it up.

Fixes #956
Fixes #910
Ensure checkout is possible when no shipping required

The modifications to ensure that the selected shipping method is still
valid later on were causing an issue for orders that didn't require a
shipping method.

This changes adjusts the default shipping repository to check the basket
to see if it requires shipping.  If not, then it returns a single
instance of ShippingNotRequired as the valid method.

Fixes #999
Merge pull request #970 from mbertheau/fix-partner-migrations

Update migration to include PartnerAddress model.
Always use ugettext_lazy for model definitions

As discovered in #1003, some fields of ModelForms were not translated.
The issue is that we've used ugettext instead of ugettext_lazy. The
former will be translated whenever model definitions are loaded, whereas
the latter will translate at the last possible moment. Only then do we
know of the appropriate language to use. Hence, we must use
ugettext_lazy for all model defintions.
Add offer data migration to ensure no null descriptions

As reported by @riklaunim, the migration that makes offer description
non-NULLable can cause problems if you already have offers with null
descriptions.

Unfortunately, the only way around this is to insert a new datamigration
before the old one, and to renumber all later migrations.  That's what
is done here.

The side-effects for people running against master might be quite
painful as they will need to tinker with their South database tables to
ensure things are consistent.  Probably best to remove all entries from
0020 onwards then fake everything.  Apologies all round - however, this
is the better long-term fix.

Fixes #977
Add unlink_user function

This allows it to be overriden. Also removes the dashboard_access
permission if the user is not linked to any other partners. This is the
inverse behaviour to link_user.
Merge pull request #1001 from tangentlabs/fix/partner_dashboard

Fixes for partners dashboard
Simplify product url tag

Consistently use product.get_absolute_url for product url, instead of 'category:detail' with kwargs
Fix for oscar_calculate_scores

Use double quotes(") instead of grave accents (`) to avoid DatabaseError while running 'python manage.py oscar_calculate_scores'
Add 'Processed' as a final status in order status pipeline

Without this, it's not possible to search for processed orders from the dashboard, since the 'Processed' status doesn't come up as an option in the status select box.
Fix double </td> in order_report.html
Merge pull request #1024 from vdboor/bugfix/order_report

Fix double </td> in order_report.html
Adjust sandbox mod_wsgi config to use less resources
Add Solr config to sandbox
Remove MultiFacetedSearch{View,Form}

These classes have been removed in favour of the new search structure
developed for Oscar's demo site.
Use net_stock_level in search index