Really avoid dynamic import of formats/__init__.py by itself

The previous code checked equality between the name of the module to import
and the module that contained the code but it failed to handle basename
and extension details.

Signed-off-by: mulhern <amulhern@redhat.com>
Get rid of os.path import

Inspired by W0621 "Redefining name 'os' from outer scope" message.

Signed-off-by: mulhern <amulhern@redhat.com>
Remove unused imports

This includes replacing 'from <module> import *' with
*) 'from <module> import <explicit list of imported names>' OR
*) 'import <module>' and replacing every imported <name> with <module>.<name>

Also, add one import, re. This was being transitively imported by importing *
from udev in devices and then * from devices in __init__.py.

Signed-off-by: mulhern <amulhern@redhat.com>
Change implicit relative imports to explicit relative imports

Signed-off-by: mulhern <amulhern@redhat.com>
Move udev_settle call from util into fs to break circular dependency

Otherwise there is a circular dependency between util.py and udev.py.

Signed-off-by: mulhern <amulhern@redhat.com>