Use StringIO.StringIO on Python 2.

io.StringIO is strict about unicode, StringIO.StringIO isn't.
Update setup.py to not use 2to3
Fix renaming scripts with 3 suffix on Python 3
Fix renaming scripts
Fix method special attributes

2to3 fixer: methodattrs
Fix list comprehension syntax

2to3 fixer: paren
Fix references to deprecated objects in the types module

2to3 fixer: types
Fix tests in utils