tests: rename: test_transaction.py -> test_transactiondata.py
transactions: do not use TransactionData to store the packaging requests.

That is precisely what hawkey.Goal is for.

Also see hawkey commit 8788f25.
transaction: foundations of dnf.Transaction and a test.
add dnf.util.group_by_filter()

Useful when one wants to split items of a sequence into two groups depending on
the result of taking each item through a filtering function.
transaction: use dnf.transaction instead of dnf.yum.transactioninfo in buildTransaction().
transaction: rewrite Base.populate_ts() to use dnf.transaction.
transaction: migrate YumOutput.list_transaction() to dnf.transaction.
transaction: migrate YumBaseCli.doTransaction() to dnf.transaction.
tests: adapt unit tests to dnf.transaction scheme of things.
wip