Add Python 2/3 compatibility, and readability.