group persistor: generate diffs between old and new DBs.

Useful for informational output.
Add dnf.util.get_in() to navigate nested dicts with sequences of keys.
groups: visualizing the groups transactions.
groups: commiting the persistor data should only happen at one place.
groups: rearrange things in CLI so user has to confirm the group changes.