vm: graphdev: fix parameter passing

This patch fixes the parameter passing to updateDevice.
The problem is I originally overlooked how hook params are
supposed to be passed to the hook.

The tests with this patch highlights the problem:

File "vdsm/vdsm/virt/vm.py", line 4408,
in _setTicketForGraphicDev
hooks.before_vm_set_ticket(self._lastXMLDesc, self.conf, params)
File "/home/fromani/Projects/upstream/vdsm/tests/vmTests.py", line 1403,
in _check_ticket_params
self.assertEqual(params, TICKET_PARAMS)
AssertionError: {'params': {'userName': 'admin', 'userId':
'fdfc627c-d875-11e0-90f0-83df133b58cc [truncated]... != {'userName':
'admin', 'userId': 'fdfc627c-d875-11e0-90f0-83df133b58cc'}
- {'params': {'userId': 'fdfc627c-d875-11e0-90f0-83df133b58cc',
? -----------

+ {'userId': 'fdfc627c-d875-11e0-90f0-83df133b58cc', 'userName':
'admin'} ? +++++++++++++++++++++

    'userName': 'admin'}}

Here the meaning of 'params', per API spec, is the same as setTicket.
'params' should be a StringMap.

Unfortunately, updateDevice accepts a single argument:

'params': 'vmUpdateDeviceParams' (quoting spec again)

Confusion arises by the nesting of 'params', hence the bug.
The hook receives the nested params instead of the plain StringMap
it should receive as per spec.

Moreover, no hooks are using graphics devices, so this bug slipped
unnoticed. The new tests will help this to not happen again.

As nice side effect, this allows a cleaner and shorter
implementation.

Change-Id: I3716b48a5fbe5beebb819754d0f500b097f04677
Signed-off-by: Francesco Romani <fromani@redhat.com>
Reviewed-on: http://gerrit.ovirt.org/28036
Reviewed-by: Dan Kenigsberg <danken@redhat.com>