Here's a diagram which explains how the API would work in the remote
case (a little more involved than I anticipated). I've kept the
complexity hidden inside libvirt so that we can change it later, but if
you can think of a simpler way to do it - ideas please ...
Rich.