Initial migration to python 3 support
Merge branch 'master' into 2.0
Tweaks to tox config to ensure that unittest2 is installed for python2.6
Update to use six.moves for simplify import of libraries that have moved. All tests passing for pythons other than 3
Migrate StringIO to six.BytesIO (has fallbacks), made use of more six defined types to simpify mapping
Initial implementation of python 3 decoder, for CQL protocol
Migrated casandra23 into cassandra library. Ported more secions.
All marshaling is working by supported pythons (26, 27, 33, pypy).

Have taken the approach of replacing methods at module load time (using if six.PY2). Much of this has been required where the assumption has been made that strings are not unicode, this of course is not true of Python 3
Merge remote-tracking branch 'upstream/2.0' into 2.0

Conflicts:
	cassandra/decoder.py
Added a __hash__ method for python 3
Added workaround in test cases for deprecated  assertItemsEqual method
Added __lt__ method to Host to allow sorted to work in Python 3, fixed __str__ method to return a string.
Python 3 compatibility, use next method to get next item from generator
Replaced final instances of dict.iteritems with six.iteritems wrapper, fixed made  Token sortable
Fixed missing code block from a bad merge
Change approach to adding a metaclass to six.add_metaclass, update metaclasses to not look for NewBase
Remove a commented out block used during development to disable exception handling.
Python 3 support in benchmarks. This is still dependant on the scales library that is not yet python 3 compatible.
Remove erroneous additional parentheses.
Fixed call to next