vm: xml: add  method to extract all the channels

The VM code needs to iterate on all the agent channels
to possibly fix the links.

However, it doesn't need, nor it should, directly
parse the XML again, because we are moving all
the XML-related processing into the vmxml module.

This patch is another step on this direction.
Please note that this patch mostly moves code around.
More aggressive refactoring is planned for future work.

Along the way, we bootstrap the vdsm/virt/vmxml.py
test module, because vmTests.py is too big already.

Change-Id: I145363ee150b3ab4e527af38c1a232431757acb1
Signed-off-by: Francesco Romani <fromani@redhat.com>
Reviewed-on: http://gerrit.ovirt.org/31450
Reviewed-by: Vinzenz Feenstra <vfeenstr@redhat.com>
Reviewed-by: Dan Kenigsberg <danken@redhat.com>