Tuning cache_key

The default cache_key was proving oversensitive, as updating the Adjustments on a LineItem would touch the LineItem, bumping its `updated_at` field and busting the cache. This would often result in multiple calls to the TaxCloud API per step in the `state_machine`, which is more than necessary. Now we only bust the LineItem cache if the quantity, price, currency, or variant change.

A more ideal future implementation will be sensitive to the Shipment in which the LineItem appears.