Only run udevadm if we actually managed to get a proper 'name'.
If the output from lsscsi contains the word 'expander' (such as 'SAS expander' etc),
then skip everything and get on with the next device in the list.
Might fix #3.
Invert the lsscsi expander check - skip the loop unless found 'disk'.
Match on 'disk|dvd|cd|tape', not just 'disk' for lsscsi output.
If udevadm can't figure out the device name, then use smartctl (with a little
help from ls).
Merge branch 'empty-name-fix' into issue-3
Make sure that the output from smartctl is availible before we try ls.