requesting a pull to gregorynicholas:master from gregorynicholas:develop

* extracts code to separate `TransactionCollection` + `GroupingCollection` classes