cloud2ovf: New command to convert qcow2 and wrap with metadata for VMWare

We need to first convert the disk to vmdk, then wrap it in some
metadata.
compose: Two small fixes

1) [taskbase] import fail_msg module so failure to find config
   file is properly displayed to stdout
2) [imagefactory] added conditional to check if imagestmpdir
   exists prior to the mkdir()
treecompose: Make rpmostreecachedir optional

If rpmostreecachedir isn't provided, don't require it and
don't send cachedir to rpm-ostree.
flake8 exception: lengthen line length to 160

Lengthen default 80 character length to 160 to keep python code
readable and somewhat sane.
config.ini: Put rpmostree_cache_dir in outputdir by default

workdir is meant to be a per-task run, so it doesn't make sense to
cache anything there, as it'll be cleaned up.
installer: Require output dir specification

Previously we'd hardcoded images/<partial checksum>, but I'm finding
that what I really want to do is stage my choice of images, and then
put them into place manually.  Or if not manually, in a more flexible
way that can be encoded into this script.

So this change then just forces callers to specify an output
directory.
/etc/rpm*.conf back to /etc/sysconfig/

It's the right thing to do. This is not a config file, it's
a short file with simple envariable settings, intended for
use by systemd via EnvironmentFile. And, on RHEL7:

  # grep -R EnvironmentFile /usr/lib/systemd/system/|wc -l
  37
  # grep -R EnvironmentFile /usr/lib/systemd/system/|grep -v /sysconfig/
  36

That is: EnvironmentFile=/etc/sysconfig/<something> appears
to be a strong RHEL convention. We should abide by it.
KRB5CCNAME: take advantage of systemd env

systemd provides EnvironmentFile=<path>, and we're already
using that for pointing to our config file. Take advantage
of that feature to also define KRB5CCNAME. This removes
some complexity from the code, and also eliminates a
potentially thread-unsafe use of putenv().
use systemd instances.

We may need to run multiple instances of a message bus
listener, with different configs for different message
types or brokers. This appears to be the systemd-sanctioned
way to do so. See

    http://0pointer.de/blog/projects/instances.html

Usage diff:

  - systemctl start rpm-ostree-toolbox-build-monitor.service
  +   "   "    "  "  "   "  "   "  "   "  " -monitor@foo.service

...where foo is an instance name. Each instance must have
a corresponding /etc/sysconfig/rpm-ostree-toolbox-foo file.