Add new VirtioLib API
Add new VirtioLib API

This commit adds a few functions to be called by virtio 1.0 aware
drivers. virtio_device_initialize first tries to initialize the
device as modern and falls back to legacy if it fails, the same
as the Linux implementation.

daynix/kvm-guest-drivers-windows,vrozenfe/kvm-guest-drivers-windows,gnif/kvm-guest-drivers-windows,virtio-win/kvm-guest-drivers-windows,gnif/kvm-guest-drivers-windows,vrozenfe/kvm-guest-drivers-windows,virtio-win/kvm-guest-drivers-windows,YanVugenfirer/kvm-guest-drivers-windows,gnif/kvm-guest-drivers-windows,ladipro/kvm-guest-drivers-windows,vrozenfe/kvm-guest-drivers-windows,ladipro/kvm-guest-drivers-windows,virtio-win/kvm-guest-drivers-windows,YanVugenfirer/virtio-win-arm,daynix/kvm-guest-drivers-windows,ladipro/kvm-guest-drivers-windows,YanVugenfirer/kvm-guest-drivers-windows,gnif/kvm-guest-drivers-windows,YanVugenfirer/kvm-guest-drivers-windows,ladipro/kvm-guest-drivers-windows,YanVugenfirer/kvm-guest-drivers-windows,daynix/kvm-guest-drivers-windows,YanVugenfirer/virtio-win-arm,YanVugenfirer/virtio-win-arm,virtio-win/kvm-guest-drivers-windows,daynix/kvm-guest-drivers-windows,daynix/kvm-guest-drivers-windows,vrozenfe/kvm-guest-drivers-windows,vrozenfe/kvm-guest-drivers-windows,YanVugenfirer/kvm-guest-drivers-windows,YanVugenfirer/virtio-win-arm,virtio-win/kvm-guest-drivers-windows