Porting to Python 3: from __future__ import unicode_literals. This was intro'd in 2.6, so that becomes the minimum required.
Porting to Python 3: Drop 2.5 from travis, add 3.2 and 3.3
Porting to Python 3: Use relative imports
Porting to Python 3: urlparse is now urllib.parse
Porting to Python 3: Alias unicode=basestring=str to ease isinstance and subclassing.
Porting to Python 3: Add Python 3 versions of path and querystring encode/decode.
Porting to Python 3: Remove urlparse monkey patch which isn't necessary on 2.6+