libvirt.tests: add test cases for virsh blkdeviotune

    Test blkdevio tuning

    Positive test has covered the following combination.
    -------------------------
    | total | read  | write |
    -------------------------
    |   0   |   0   |   0   |
    | non-0 |   0   |   0   |
    |   0   | non-0 | non-0 |
    |   0   | non-0 |  0    |
    |   0   |   0   | non-0 |
    -------------------------

    Negative test has covered unsupported combination and
    invalid command arguments.

    NB: only qemu-kvm-rhev supports block I/O throttling on >= RHEL6.5,
    the qemu-kvm is okay for block I/O throttling on >= RHEL7.0.


BTW, This PR is based on https://github.com/autotest/virt-test/pull/1682
@liyangfnst, well, I may move line 152 behind line line 166, and then I don't need to check libvirtd again, for the TestNAError and TestFail exceptions, at present, they're both accepted by upstream, this is an example:

$ git blame libvirt/tests/src/virsh_cmd/domain/virsh_blockjob.py|grep -A 1 utils_libvirtd.libvirtd_is_running
6c736c45 (Yanbing Du 2014-02-12 20:20:30 +0800 126)     if not utils_libvirtd.libvirtd_is_running():
6c736c45 (Yanbing Du 2014-02-12 20:20:30 +0800 127)         raise error.TestFail("Libvirtd service is dead.")

$ git blame libvirt/tests/src/virsh_cmd/domain/virsh_numatune.py|grep -A 1 utils_libvirtd.libvirtd_is_running
2e7c8bb5 libvirt/tests/src/virsh_cmd/domain/virsh_numatune.py (John Ferlan              2014-02-24 09:07:52 -0500 240)                 if not utils_libvirtd.libvirtd_is_running():
2e7c8bb5 libvirt/tests/src/virsh_cmd/domain/virsh_numatune.py (John Ferlan              2014-02-24 09:07:52 -0500 241)                     raise error.TestNAError("libvirt service is not running!")

If you want to uniform this, it's also okay to change it from TestNAError to TestFail, I think it's not a big deal, anyway, it's an expected result if this case is skip or can't be run due to libvirt daemon issue.