yyoom: extending error messages

Extending messages when installing / removing packages failed.
Updated .gitignore for excluding PyCharm IDE files.
Small code refactoring: _get_action_type_map, _parse_argument
Extended YyoomBase class and renamed to _YyoomBase (private class).
Fixing _YoomBase creation order to avoid unneeded data in the JSON.

Change-Id: Icb2e67264dbf1b2b251b4ca1680e5b14eff06027
Report all errors via logger

Errors during output and logging setup should not happen in sane
environment, so it is ok to print out stacktrace when they happen.
All other errors should be reported via logger.

Change-Id: I8efcb081b951195d8cdd6612c0cd796f922a1f49
Add libffi-devel to bootstrap requirements

For RHEL and derivatives libffi-devel is required to build some
packages, but it was not installed by anvil.

Closes-Bug: #1218122
Change-Id: I7eb0d04ea6f0f1ef7b4b42816a57593cb0b2848d
Always create directories when moving RPMs

Even if there are no RPMs to move and even source directory does
not exist, we still need to create target directory because
we rely on its existence later.

Closes-Bug: #1218229
Change-Id: I382794ab6455f045cbd8d8b3a1b2919fadee983f
Package metering agent and vpn agent

Two new agents were added by upstream: metering agent and vpn agent.
We need to package their executable and configuration files.

Closes-bug: #1223893
Change-Id: I0d9779b10716b056bc9f9fde5b914e15704e1741
Add swift-client to all personas that have cinder

As cinder now requires swift client, we should build it when we
build cinder.

Change-Id: Iaa329b7cec9aa2a363452a0d11b11d1b01422894
Merge "yyoom: extending error messages"
Merge "Report all errors via logger"
Merge "Add libffi-devel to bootstrap requirements"
Merge "Always create directories when moving RPMs"
Merge "Package metering agent and vpn agent"
Merge "Add swift-client to all personas that have cinder"