- Create custom subclasses of all built-in Oscar conditions and Benefits
- Eliminates need for monkey-patching the
`Condition.consume_items` method. - Adds migration to change all row's proxy_class from
`oscar.apps.offer.FOOBAR` to `oscarbluelight.offer.FOOBAR`.
- Change behavior of `FixedPriceBenefit` to be more logical.
- Uses the benefit's assigned range instead of the
condition's range. - Respects the `max_affected_items` setting.
- Improved dashboard form validation using polymorphic `_clean`
methods on benefits and conditions.
- Disallow deleting a range when a benefit or a condition depends on
it.
- If a benefit or condition's proxy_class isn't a proxy_model,
automatically create the row in the subclass's table.