Refactoring productsMaker, snapshot, snapshotmaker
deliver boolean => enum
Product calcualates the balance given an account and a day
Arrears calculated by Product.arrears rather than being calculated and passed in