Pyflakes on utilities tests

I left the unused imports that represented things that should be tested.

One change was a variable name typo (in code_quality). The rest were unused
variables or imports.
handle missing platform.python_implementation in CPython 2.5
Remove superfluous check for tuple instance.

Limits are canonicalized to tuples by the constructor.
Merge branch 'master' into integrals

Conflicts:
	sympy/integrals/heurisch.py
	sympy/integrals/risch.py
	sympy/integrals/tests/test_risch.py
Merge pull request #2089 from sn6uv/pypy_tests

Pypy tests
3783: sorting lists of edges in prufer.
Pyflakes fixes for core files

These were mostly just unused imports. There was an unused branch

if isinstance(p, decimal.Decimal):
    rv =  _decimal_to_Rational_prec(p)[0]

in numbers.py.  I also found an undefined name _clear() in sympify.py that I
did not know how to handle, so I opened
https://code.google.com/p/sympy/issues/detail?id=3818 for it.
remove hack2 from xreplace
define _clear and let kernS handle 2-arg Mul

S('2*(x+y)') -> 2*x + 2*y

kernS('2*(x+y)') -> 2*(x + y)
Method change_index() added for changing index.
3783: some additional corrections
Example failures fixed.
Example failures fixed.
Example failures fixed.
Example failures fixed.
polys: Use __nonzero__ instead of __bool__ and let 2to3 do its job
polys: Don't use __slots__ in GroebnerBasis
3783: removing the new line
Merge pull request #2099 from meclark256/3783_edges

3783: sorting lists of edges in prufer.
added test, which is skipped because it hangs.