CA-145685: Create a tap disk to pass the host DVD drive to a PV guest

First draft to create a tap disk, to pass the host DVD drive to a PV guest.

Before testing this patch, the following modifications must be applied to blktap first:
https://github.com/xapi-project/blktap/pull/133

Considering several ways to improve this PR:
-Provide two distinct commits, one for production code and another one for unit tests
-Avoid relying on string "/dev/xapi/cd", since a change in this path would break SM

Thanks

Signed-off-by: Flavien Quesnel <flavien.quesnel@citrix.com>
If get_vdi_location can throw exception should we manage them?