Implemented a pyudev USB detection

Moving away from the buggy sub process method of detecting USB insertion
and removal to the a pyudev controller that interfaces nicely with the
PyQt4 event loop.