- Rename #apply_discount to #register_applied_discount to make it
more clear that it only registers discounts and does not apply them
- Expose maximum possible discount to make it possible to get get the possible
discount without registering it in the budget