Wire up unused ShippingAddressUpdateView

It looks fine and has tests. Must've been forgotten!

Reported by Peter Brooks in
https://twitter.com/pbrooks_uk/status/473243588814733312
Template timings panel now supports Python 3

Version 0.6.0 supports Python 3, and I bumped it to 0.6.1 in 89598e3.

That means we can drop the special casing for it in the settings file.
PEP8 fixes

Zero complaints by ./lint.sh now.
Use contextual markers for translatables

Suggested by @mbertheau

Also, I promise to Read The Funtastic Manuals first than PR.

PEP8 fixes amended by @maikhoepfel.

Fixes #1357.

Conflicts:
	oscar/apps/address/abstract_models.py
Use parent method to support all behaviour overriding options
Merge pull request #1358 from machtfit/use-parent-method

Use parent method to support all behaviour overriding options
Workaround for Django bug with pggettext_lazy

pgettext_lazy currently trips in released versions of Django when it's
passed a byte string: https://code.djangoproject.com/ticket/22565

The recent commit d3ddfa5f79c2197d7614c77ee6b96399acbd3918 added a lot
of contextual markers using pgettext, so a few views tripped.

The workaround is easy enough; just ensure all strings passed to
pgettext_lazy are unicode strings.
Drop retail_price from pricing policy interface

Since pricing policies were implemented, the retail_price attribute was
a part of the interface, but not used. As the retail price is only ever
used for display purposes, it doesn't semantically belong into the
pricing policy, which is more concerned with business logic.

The retail price is still easily accessible as PurchaseInfo pass the
stockrecord, where it can be accessed in e.g. templates.
Update Base pricing policy interface

This change achieves two things:
- Pricing policies now are mostly concerned with returning a
  oscar.core.prices.Price instance instead of exposing attributes
  of a price directly
- Prices are now returned dependent on the quantity, which allows for
  implementation of non-linear prices.

Down the rabbit hole we go!
base
Update pricing policies to new interface

* FixedPrice now required passing in the tax_rate instead of the tax
  total, because the tax total will change depending on quantity.
  Semantically, this now means that not the strategy, but the pricing
  policy is responsible for calculating tax.
* TaxInclusiveFixedPrice has been simplified.
fixedpr
Update strategy mixins concerned with pricing

The NoTax and FixedRateTax have been refactored to show how similar
they are. That also means that the fixes from c3940c3 for zero-price
products are applied in all cases, which wasn't the case!

Both mixins now pass in the tax_rate instead of the tax as per the
updated pricing policy interface.
strat
Harden Price class

This commit has two goals:
* Make it clearer that it's supposed to be treated as a read-only
  instance. Pricing policies are responsible for calculating tax,
  so remove any logic to be able to set tax.
* Complain loudly when accessing incl_tax or tax if tax isn't known.
  This was previously handled by the pricing policies only for children
  of FixedPrice, and only when accessing incl_tax.