watch for -Add exponents in factor_terms

If the exponent of a power is -Add, gcd_terms will rewrite it
distributing the -1 because of how Terms and Factors works, so
watch out for that.

With this change, Pow.__new__ had to be changed to use sign=False
or else (3 + 2*I)**(1/(log(-3 - 2*I) + I*pi)) is not recognized as E.