In preparation for having multiple top-level kiwi description files,
expose the ability to define which file to read.
Additionally, tests are updated to use this new flag.
As the list of buildable variants grows, it will be harder to maintain
in the main README. Thus, split it out to its own file to keep the
README manageable.
We now have more than one cloud system that is essentially a KVM
environment that uses cloud-init to boot, so now we declare that
"generic" and have the OpenStack and Oracle images reuse those
definitions.
Also, in preparation for layered cloud image variants, rename
them from "Cloud-" to "Cloud-Base-". Vagrant variants are
similarly prefixed to make it clear who provides them.
Finally, restructure the layout of the tmt plans to match the
description structure.
KIWI differentiates between libvirt and VirtualBox based Vagrant
images, especially for the box format, so now we split up the
Vagrant definition accordingly.