[virtio-magma] make virtio-magma its own device

This change moves virtio-magma into its own device, instead of a sub-
device of virtio-wayland. It also adds support for the full magma API
sufficient to support stock Vulkan. It also extends virtio-wayland to
offer file descriptors for existing vfds that virtio-magma can use to
wrap exported buffers. This allows for zero-copy swap chain rendering
e.g. using the VK_KHR_wayland_surface vulkan extension.

Test: ran virtmagma_unit_tests in biscotti_guest
      ran virtmagma_vulkan_unit_tests in biscotti_guest
      ran wayland_swapchain_test in biscotti_guest
Change-Id: I1933e45d486d4d74c512620492d37ecdac7e4049
9 files changed