use only one definition of get_cdrom_drives()
remove generic try-except

If we do want to catch generic unexpected tracebacks,
this shouldn't be done here.

Note that `import discid` might raise OSError
when the python module is found, but not libdiscid itself.
We might want to catch that explicitely,
but that is supposed to be prevented by whoever made `discid` available.
refactor cdrom code a bit