Lots of changes, preparing for Python 3.
Further Python 3 preperations...