Test support for experimenting with special SCSI devices

This change covers the `_extract_dev_name` function and also enables users to test scsi hosts with special devices. As an example, `AdapterWithNonBlockDevice` is exposing a special device.