Refactor allowance.py -- better handle call counts

* Create call_count_accumulator: contains all call counting logic
* Remove call count logic/state from allowance.