initial port of just consumption calc and tests from commtrack

mostly just moved from commtrack app, and then split out the reusable
test components
rename compute_consumption --> compute_consumption_from_transactions
remove unnecessary second layer of indirection for mock transactions
add partially implemented transaction expansion function and basic test
add simple consumption calc for cases + more tests (some failing)
add doc comment
add receipt transaction support to consumption

- also includes pulling some stuff out into constants (work in progress)
  and renaming of constants to be more clear
add reconciliation transaction for consumption, fix test
tiny whitespace
force consumption calc to match types
push transaction inference into the db + tests

- add subtype to represent inferred transactions and migration
- also update consumption calc and tests
more explicit ordering of transactions
add optional ability to restore consumption XML as a balance block
remove no longer needed param from consumption calc
make consumption config a class, fix tests
allow passing consumption config to the ota restore code via settings
add test config utility function
make consumption defaults work even if you pass in None
add support for overriding defaults in the consumption calc + tests
switch to a composition-based approach to setting the default consumption