massive 'python 3' overhaul, part 2