[BACKPORT] Bugfix for has_stock_record

Stockrecord can be None if loaded with select_related.

(cherry picked from commit 7dae34edfe1d8d37a9edf8d51630500e2ec75f72)
Bump version to 0.4.12
Merge branch 'releases/0.4' of https://github.com/tangentlabs/django-oscar into releases/0.4

Conflicts:
	CHANGELOG.rst
Bump version to 0.4.13

There was some silliness where a published version (0.4.12) of Oscar was
pushed to PyPI but not to Github. Then a PR came in which tried to add
some functionality but wasn't aware of the existing 0.4.12 release.

This commit sets the right tag.
[Backport] Stop using home-rolled encryption for basket cookies

For anon users, the basket ID is stored in a cookie.  Previously, this
was stored with a simple crc32 hash to prevent users enumerating baskets
by changing their cookies.  However, home-rolled encryption is always a
bad idea.  In this case, it may have probably exposed too much
information allowing the SECRET_KEY to be determined.

This change switches away from the home-rolled encryption to use
Django's built-in crypto signing functionality to store the basket ID.

Thanks to Raphael Kimmig for reporting this issue and providing this
patch.

Conflicts:
	oscar/apps/basket/middleware.py
Bump version to 0.4.14