Adjust order detail template to break out tax-exclusive costs

This is useful in the US where taxes are treated separately from other
charges.
Adjust how shipping methods are handled in the repository class

The old Repository class wasn't thread safe as the method instances were
created at compile time.  Since the instance is configured by setting
the basket for each request, this poses thread safety issues as two
requests could share the same method instance (one of which would have
the wrong basket assigned).

This change fiddles with how the methods are handled, ensuring that they
are instanciated within the instance methods so that thread-safety
issues go away.

Shipping methods need a gentle rewrite for v0.7 to ensure they aren't
vulnerable to such issues.