Update mpmath to 0.18-a1

The paths haven't been adapted yet.
Fix mpmath imports
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
Fixes issue #2769

The translate function in the latex printing module was not being called on
single variables in vector expressions. This is now implemented in the
mechanics latex printer so that variables show up correctly in Latex printing.
Note that gamma is reserved for gamma functions in SymPy and is not considered
a valid variable name for simple translation to its latex form.
Spelling and expansion of note.