Deduplicate Spree::Adjustment loads for performance

* Reduces the available object graph paths to access Spree::Adjustment
  instances to one.
* Reduces the amount of duplicates being loaded via performing in-memory
  scoping on associations.
* Significantly reduces the amount of lazy loads triggered within most
  order operations / populations through the elimination of duplicates.
`Order#total` returns a `BigDedicmal` instance that do not share the object identity property of `Fixnum` instances. The gross of sprees specs happily compares BigDecimal instances via `#==`.  This assertion actually was debug code and I'll remove it altogether.