Allow gauge usage groups to opt out of charging.
Issue #2207421: Don't prorate prepaid licenses for the next cycle.
Clean up rules.
Fix test fail on Commerce 1.9
Fix weirdest accidental bug ever.
Allow CommerceLicenseBillingGaugeUsageGroup::addUsage() to be used without a  parameter.
Issue #2157829 by bojanz: Initial prepaid amount is not prorated.
Issue #2148787 by bojanz: Preload the revision in commerce_license_billing_plan_history_list().
Clean up commerce_license_billing_plan_history_list().

- Use the billing cycle id for the static cache. This prevents stale data when called on
  two different billing cycles during the same request (as is common in tests).
- Convert the db_select to db_query, since it's much faster.
Clean up commerce_license_billing_usage_history_list().

- Use the billing cycle id for the static cache. This prevents stale data when called on
  two different billing cycles during the same request (as is common in tests).
- Make the date conditions match commerce_license_billing_plan_history_list(), there is no
  need to fetch data that doesn't belong to the current billing cycle, and it can cause bugs.
Rewrite CommerceLicenseBillingUsageGroupBase::isComplete(), fix tests.
Replace commerce_license_billing_usage_clear() with a more selective commerce_license_billing_usage_history_clear().
Delete usage records for a license when a license gets deleted.
commerce_license_billing_usage_history_clear() needs to reset the static cache.
Reimplement currentUsage() of usage groups.

- Now works based on usage history, instead of querying storage directly.
- Limits calculations to the provided / current billing cycle.
- Supports reporting for revisions other than the current one.
Issue #2218153 by bojanz: The recurring process doesn't stop when there are no more active licenses.
Issue #2139917 by balintk: Update status of successfully charged recurring order.
Delete code that's no longer needed since d14295.
Update tests, fix order of operations.
Issue #2141281 by bojanz: Make it possible to postpone the plan change to the end of the billing cycle.