We separate all the provisioning bits to diskbackend.py. VirtualDisk
users now need to explicitly opt in to storage creation by using
set_create_storage().
validation is no longer done automatically, users must call the
validation() command.
__init__ drops all extra parameters.
This will eventually get us to a point where we can unify the manual
XML building and XML parsing machinery, and get consistent validation
behavior between devices.
-c maps to --cdrom for virt-install, but for other libvirt tools like
virsh it maps to --connect.
Handle -c and --cdrom a little differently: if -c contains '://',
error out with an explanation. User can work around it by using
--cdrom. This could in theory break some users, but the change they
make will be backwards compatible.
Notice the missing - in -vcpus. It maps to
--hvm --cdrom pus
If the user also specifies --paravirt, they get an error that hvm and
paravirt conflict, which is very confusing.
There isn't a nice way to catch this issue which isn't back compatible,
so scrape the raw argv and try to figure it out.