Fix vga=virtio by using a scatter-gather list for the framebuffer.
The current frame allocator limits requests to powers of two, between 4 KiB and 4 MiB. As such, a 8-bit color 1920x1080 framebuffer needs at least two allocations. This also adds the useful Sgl
wrapper which other drivers may use.