virttest.qemu_devices: Support for PCI RC/bridge/switch

This patch adds the support for various PCI root controllers, bridges and
switches.

PCI root controllers and bridges (and custom switches) work as normal
QPCIBus (with limited address ranges).

It's possible to say you want an automated x3130 switch. This switch
creates x3130-upstream port and for each inserted device
xio3130-downstream port. This is done automatically at any stage (during
hotplug). If you need different behavior (multiple devices on a single
switch port) you have to create the switch using your own x3130-upstream
and xio3130-downstream ports.

Signed-off-by: Lukáš Doktor <ldoktor@redhat.com>
virttest.qemu_vm: Add support for PCI RC/bridge/switch

This patch adds the support to define PCI root controllers, bridges and
switches via autotest params. The syntax is:

# controller names/objects
pci_controllers = "root.1 pci_bridge1"

# default pci_bus (all devices will be plugged here)
pci_bus = 'pci_bridge1'
# parent bus of root.1
pci_bus_root.1 = 'pci.0'
# parent bus of pci_bridge1
pci_bus_pci_bridge1 = 'root.1'
# type of root.1 controller (root controller ioh3420)
type_root.1 = 'ioh3420'
# type of pci_bridge1 (PCI2PCI bridge)
type_pci_bridge1 = 'pci-bridge'
virttest.qemu_devices: Docstring/PEP8/pylint fixes

Some pylint PEP8 fixups and additional docstrings.

Signed-off-by: Lukáš Doktor <ldoktor@redhat.com>