Ensure that the directories leading to the KVM image have enough
permission for libvirt/QEMU to traverse, especially in the case where
libvirt/QEMU group is set to to `kvm`/`users`.
Technically, DOMAIN_SHUTDOWN just means that the VM is in the process
of shutting down. We should still return state.Running so that we
don't return from `minikube stop` before the domain is actually
stopped. This should fix a few flakes.
This allows us to use the hyperkit Driver struct in minikube, without
needing CGO_ENABLED=1. For the hyperkit driver binary, the
CGO_ENABLED=1 function will work.
Share most of the disk image setup between hyperkit and kvm drivers.
Move and remove a lot of shared configuration between all the in-tree
drivers: kvm, hyperkit, none.