Adds an expm1 function for complex values. 

Partially addresses #3141. It uses the property that
```
cos(x) - 1 = -2*sin(x/2)^2
```
There is some cancellation error when `real(z)` ~ `imag(z)^2/2` for small `z`, but otherwise is fairly stable.

I also removed some unnecessary branching conditions from the complex `exp`.