Make some simple changes for Python 3 compatibility.

With this commit, test status for Python 3.3 is 75 tests, 1 failure, 37
errors.
cornice/tests/test_resource.py: USERS.keys() => list(USERS.keys())
Replace `isinstance(x, basestring)` idiom with something more Python 3
compatible
Changes to accomodate that request and response bodies are byte strings
with Python 3.
Revert one change that 2to3 made where it wrapped `list()` around
`e.asdict().items()` but we don't need it in this case.
Add py33 to tox.ini
cornice/tests/test_validation.py: Tweak tests involving content types
and HTTP Accept header. These tests fail sometimes in Python 3 (but not
in Python 2.6 or 2.7). I think these tests pass in Python 2.x, because
of some implementation detail of Python 2.x; not because of behavior
that is guaranteed by Pyramid.
Add back a content type check (removed in
49169c4832ac46662e0ad11082350ddf11e7f450) as suggested by @ametaireau
Add py33 to .travis.yml
setup.py: Add Python 3 Trove classifier ("Programming Language :: Python
:: 3")
Reword comment in test_accept

to reflect the fact that we may get either one of two content types;
there is not one specific one that is guaranteed to be returned.