PEP8 code cleanup, split into drivers and utils
Python3 compatibility changes