Move dispersion code to polynomials module
Proper documentation for all dispersion stuff
Fix mpmath imports
small changes in the documentation; used ``as_int``
add Set.boundary property
naive solution for Union._boundary
add ProductSet._boundary
Boundary of empty set is empty set
Boundary of UniversalSet is EmptySet
Boundary of naturals/integers is self
ImageSet maps lambda onto boundary
boundary of Range is self
ProductSet(single_set) == single_set
ProductSet._union joins equal args if at top or bottom

     ProductSet(a, b, c) + ProductSet(a, d, e)
->   ProductSet(a, ProductSet(b, c) + ProductSet(d, e))
un-XFAIL boundary-line test
add Set.is_closed property
bigger docstring for Set.boundary
add interior and closure to Sets
add Set.is_open
Union._boundary removes sets found in interior