Make some messages translatable
Merge pull request #1227 from itbabu/make-some-warnings-translatable

Make some messages translatable
Fix tests for product class dropdown changes

On my local machine, django-dynamic-fixture created product classes
where the slug and primary key were identical and the tests passed
although the check was wrong. Luckily, Murphy's Law works in our favour
on Travis CI, and that failed and spotted it.

This commit fixes the assumption that the redirect view expects the slug
(which it doesn't since the last commit), and ensures that the generated
product classes are non-numeric.
Introduce django-extensions' AutoSluField

A lot of Oscar's models have slugs that are populated from other fields
in the respective save() methods.
But currently there's no logic to check for duplicate slugs.
AutoSlugField does both the population and ensures uniqueness.
Add tests for AutoSlugField

Taken from django-extensions with some adapting to our needs.
Allow explicitly setting slug field even if saving for first time

E.g. Modelname.objects.create(slug='123', name='hi') would otherwise not
work, as add was True (first time save) and AutoSlugField's logic would
just create a slug from the name. It now checks if the slug field is set
already, and if it is, just returns the set slug.

It is important to note that explicitly specifying a slug does skip the
uniqueness validation.
Turn several SlugFields into AutoSlugField

I tried to be conservative and mostly converted SlugFields that have
unique=True set.

For PaymentEventType and CommunicationEventType, it was discovered
that setting unique=True was likely forgotten.

As far as I could tell, no forms needed to be changed as they all
exclude the affected slug fields anyway.
Remove Product.status field and Contributor models

The Contributor models (Contributor, ContributorRole, ProductContributor
and their abstract versions) were unused and too specific to the book
domain.

Product.status was provided as a convenience, but the real world showed
that more often than not, a different field type is necessary. As adding
a field is much easier than changing the field type, it is removed.
Remove status field from sandbox fixtures

make sandbox was broken. Now it is unbroken.
Handle cookies that contain strings

We have a broken "NING/1.0" bot crawling our customer's site that sends a quoted string here that deserializes to a unicode object.
Fix links for other GitHub repos in the docs
Merge pull request #1229 from patrys/patch-1

Handle cookies that contain strings
Merge pull request #1230 from grakic/patch-4

Fix links for other GitHub repos in the docs
Ensure "active" offers exclude those that are suspended

This required extending the offer factories to support setting the
start- and end-dates (looking forward to using FactoryBoy now).  Some
additional tests were added for the active manager.

Fixes #1128
Handle naive datetimes in offer message filtering fns
Remove autoslug fields from admin classes

They fail on the autodiscover call.
Ensure change password page requires authentication

Fixes #1231
Merge branch 'master' of https://github.com/tangentlabs/django-oscar into project/mr
Fix misprint in commit f56226a.
Merge pull request #1235 from vovanbo/fix/misprint-in-f56226a

Fix misprint in commit f56226a