Fixed a bug when trying to edit variant products.
Merge pull request #1217 from linovia/releases/0.6

Fixed a bug when trying to edit variant products.
Backport get_classes refactoring

Issue #1277 correctly pointed out that Oscar's latest released version
has an issue when trying to override dashboard apps. Hopefully that is
fixed by just backporting the changes to get_classes that have happened
since.
[Backport] Partner views now use get_class to load User forms

These forms can now be overridden in the local app which is handy
[Backport] Add helper for Meta.fields definitions for User forms

This is necessary because the Meta def itself is sufficient to crash the
app for a different User model - the form doesn't even need to be
instantiated. There is still plenty more code that makes explicit
reference to first_name and last_name however.

Fixes #1275

Moved to oscar.core.compat and renamed by @maikhoepfel

Conflicts:
	oscar/apps/dashboard/partners/forms.py
	oscar/core/compat.py

Backport of a32766b.
[Backport] Use existing_fields for UserForm, and use correct User model

I messed up when moving Alex Moon's code to oscar.core.compat and used
the wrong User model, defeating the point of the exercise.

This is fixed now, and the filter is also used for the UserForm that
gets used in the account section.

Fixes #1283.
Fixes #1282.

(cherry picked from commit 20df512edac56a97539251c6f5ede9046273255e)

Conflicts:
	oscar/apps/customer/forms.py
[Backport] existing_user_fields: Fetch User model only when called

Otherwise it may cause Django start up pains, and does cause migrations
to fail. Thanks to Jonathan Moss for reporting.

(cherry picked from commit fa3f793a35ecebb278271aa8a85b888206a3c575)

Conflicts:
	tests/integration/customer/test_custom_user_model.py
Merge branch 'releases/0.6' of https://github.com/tangentlabs/django-oscar into releases/0.6