Prettier printing of MathFunctions

Right now, when a `MathFunction` is printed, it will look something like this:

```
f(x) = -21x^5 -21x^37 
```

The spacing between the two terms and the sign doesn't look quite right. Change it so that it looks more like:

```
f(x) = -21x^5 - 21x^37 
```

Note that for the leading term, there should be no space between the sign and the coefficient. For all following terms, there should be a space.