Clean single-source support for Python 3 and 2. AKA "support Python 2 with fewer warts"