Simplify purchase_info tags

by taking advantage of the template tag helper functions.

https://docs.djangoproject.com/en/1.4/releases/1.4/#assignment-template-tags
Pass order and application to Benefit.apply_deferred

Deferred benefits could reasonably make use of that information.
applies_to_tax_exclusive_prices has been removed in f03a7e8
Remove conditions and benefits

Remove the conditions Coverage, Value and Count and the benefits
AbsoluteDiscount, FixedPrice and Multibuy. Add NoneCondition for offers that
apply to all baskets.

Reason is that the correct semantics are unclear and we don't need them now
and I don't want to spend time fixing the tests for them. I'll refactor
offers without them.

Example for unclear semantics:
https://groups.google.com/forum/#!topic/django-oscar/vceEpy889O4
https://groups.google.com/forum/#!topic/django-oscar/XMuhEBLbv-U
Don't create objects in the database unless necessary
Refactor offers

To track benefit application on a separate data structure instead of the
basket line. This uncouples the database-bound basket from the offer
calculations.
Merge branch 'css-changes' into machtfit

* branch css-changes:
  Leave non-wysiwyg text areas alone
  Use bootstrap button color instead of the same color for all button types
  Don't overwrite bootstrap error, success and information alert colors
  Update less to 1.6.2 and enable source maps
Merge branch 'get-model-problem-workaround' into machtfit

* branch get-model-problem-workaround:
  This is the real fix. Hopefully.
  Just log that for now until we figure this out.
Merge branch 'django-tables2' into machtfit

* branch django-tables2:
  TODO
  Allow table icon customization
  Move dashboard categories list to django-tables2
  Move table caption into <table><caption>
  Keep current tab and ordering when returning to the list after editing
  Move the dashboard product list to django-tables2
Merge branch 'checkout-remove-noise' into machtfit

* branch checkout-remove-noise:
  Remove alert that is irrelevant to the user

https://github.com/tangentlabs/django-oscar/pull/1321
oscar merged this
Merge branch 'report-timezones' into machtfit

* branch report-timezones:
  Make timezones work with USE_TZ=True

oscar merged this
Merge branch 'build-submission-arguments' into machtfit

* branch build-submission-arguments:
  Rename arguments to match what build_submission returns

oscar merged this
Merge branch 'use-parent-method' into machtfit

* branch use-parent-method:
  Use parent method to support all behaviour overriding options

oscar merged this
Merge branch 'spelling' into machtfit

* branch spelling:
  Correct spelling
Merge branch 'load-form-dynamically' into machtfit

* branch load-form-dynamically:
  Dynamically load form
Merge branch 'dynamic-subdomain' into machtfit

* branch dynamic-subdomain:
  Extract the password reset url into a method
Merge branch 'allow-fallback' into machtfit

* branch allow-fallback:
  Allow fallback to standard template_name
Merge branch 'redirect-to-parent-optional' into machtfit

* branch redirect-to-parent-optional:
  Make it optional to redirect to the parent
Merge branch 'simplify-basket-form-tag' into machtfit

* branch simplify-basket-form-tag:
  Simplify basket_form tag implementation

merged https://github.com/tangentlabs/django-oscar/pull/1377
Merge branch 'offer-improvements' into machtfit

* branch offer-improvements:
  The code handles the no applicable lines case well without this statement
  Make Benefit classes more reusable
  Don't break sentence spelling/grammar in German.
  Allow specifying other model attributes when creating custom benefits or conditions

https://github.com/tangentlabs/django-oscar/pull/1392