Use Case: Two contracts for a customer. One is Unlimited Support usage and one is a block of hours. The techs make mistakes by not marking it billable when it is a block of hours Contract.
When using a specific contract, activities should be able to default billable.
Add a preference in the contract and when any activity is created associated to that contract (currently possible thru a case) inherit that preference. End user can change it if needed/has rights