Fix implementations of __str__ in Python 3.

This fixes several failing tests.
Tolerate the unicode flag being on in Python 3 regexes.

This fixes another failing test.
Quit using xrange in Python 3.

2to3 doesn't parse strings.
Tolerate nondeterministic order of rules that pop out of str(Grammar).
Tolerate different reprs on different Python versions.

This fixes the last of the tests failing in Python 3. Tox is happy now.