Major rewrite how transactions are built.

The result from the solver is now converted into Steps
which are used to present the transaction to the user
and search for packages already in the cache, etc.
After that, the actions are created.
The Action class has been much simplified and made
less complex.
Update translations.