CA-147816: Create a tap disk for every kind of udev device

Commit a121c306 was about creating a tap disk when passing a physical
cd device to a guest.
For that purpose, we checked that the value of sr.sm_config['type'] was
equal to 'cd'.

With CA-147816, we also want a tap disk in case of a USB device.
However, sr.sm_config['type'] is equal to 'block' in this case, which
may be too general; for instance, we do not want to create a tap disk
for a storage array.
Moreover, there is no easy way to know that we are dealing with a USB
device.

According to the XenServer 6.2 administration guide, a udev SR only
handles cd and usb devices.
This fix relies on this assumption, since a tap disk is now created if
the SR handles udev devices.

Signed-off-by: Flavien Quesnel <flavien.quesnel@citrix.com>
Reviewed-by: Thanos Makatos <thanos.makatos@citrix.com>
CA-147816: [UnitTest] Update and refactor unit tests

Update and refactor unit tests introduced by 3060073a to reflect the
changes from a121c306 to c0f26bf4.

Signed-off-by: Flavien Quesnel <flavien.quesnel@citrix.com>
Merge branch 'CA-147816' into xs64bit

Signed-off-by: Chandrika Srinivasan <chandrika.srinivasan@citrix.com>

GitHub: closes #228 on xapi-project/sm