Provide Python3 compatibility via six module

The six module defines a number of conveniences for compatibility
so that the same module can run under Python 2 and Python 3 without
preprocessing through the likes of 2to3.

The current state of this branch shows every test passing under Python 2.7 and
Python 3.3, with the exception of the "quiet" output option under Python 3.3
(which appears to be related more to the "more than 2 indicator" warnings
than Unicode decoding warnings).

Signed-off-by: Dan Scott <dan@coffeecode.net>