Changed unicode references from hex to names, see #6430

Replaced hexadecemal notation with named unicode references.
Names are fully interchangable with the hex codes being replaced.

Names obtained using unicodedata.name() function.
Example:

>>> import unicodedata
>>> print unicodedata.name(u'\u03c0')
GREEK SMALL LETTER PI
>>> u'\N{GREEK SMALL LETTER PI}'
u'\u03c0'
>>> u'\N{GREEK SMALL LETTER PI}' == u'\u03c0'
True
>>> u'\N{GREEK SMALL LETTER PI}' == u'\u03c1'
False
Changed unicode references from hex to names, see #6430

Replaced hexadecemal notation with named unicode references.
Names are fully interchangable with the hex codes being replaced.

Names obtained using unicodedata.name() function.
Example:

>>> import unicodedata
>>> print unicodedata.name(u'\u03c0')
GREEK SMALL LETTER PI
>>> u'\N{GREEK SMALL LETTER PI}'
u'\u03c0'
>>> u'\N{GREEK SMALL LETTER PI}' == u'\u03c0'
True
>>> u'\N{GREEK SMALL LETTER PI}' == u'\u03c1'
False
Corrected invalid unicode name

There is no greek letter 'I'
Fixes issue 8504
Use is_polynomial instead
edit polyroots error to make it like the other in file
Don't use reduce in checkodesol()

It isn't avaiable in Python 3
Use set().union instead of set.union

This makes it work with no arguments. Thanks to @kjordahl for pointing this
out.
Add examples for summation with symbolic indices

fixes #8549
Use set().union instead of set.union

This makes it work with no arguments. Thanks to @kjordahl for pointing this
out.
cleanup other set.union cases
Merge pull request #67 from smichr/union

cleanup reduce/set.union usage
make sure GeometricEntity args are Basic
make optics/util more robust wrt arg types
modify and move _nsort
modify solve_poly_inequality

o assert that the input is Poly
o raise an error if a Relational involving a number doesn't evaluate
modify solve_rational_inequalities

o watch for empty _eqs
modify reduce_rational_inequalities

o use solve_univariate_inequality if domain is not ZZ or QQ
o don't split solution into real and imaginary parts, otherwise
  a result involving a complex number could return False rather than
  raising an error because the relation is not defined for complex
  numbers.
modify reduce_abs_inequality

o only raise the error if the variable.is_real is False; let vanilla
  symbols be used
modify solve_univariate_inequality

o allow handling of rational functions; solve_rational_inequalities could
  handle this if root sorting worked for EX, but it doesn't so this
  routine is necessary