try return a factored expr more often from simplify
denest powers in powsimp so 4**s*2**(x-2*s) -> 2**x

Should this only be done if the base is a Number?
allow factors of coeff to enter powers
keep expr as option before powsimp
mark some solve tests as slow
Factors cleanup and non-integer exponent handling
keep I in Factors

This is a little troubling since transform tests fail if the I is
removed from the Factors factors and replaced with sqrt(-1).
AppliedUndef.is_number -> False
exp_polar related changes

* define is_number for exp_polar

* move abs after test for exp_polar (which has been changed to a test
that arg.is_Number or pure_complex rather than testing for the _prec i
attribute).
add quick exit for simplify if expr is Atom
modifications to equals

** Inline notes describe why the minimal_polynomial is not being used
at present to prove an nsimplify result. solve, however, may be able
to prove that an expression is zero by getting a self-consistent solution
when solving for a surd of the expression. An test was added for this.

** In addition, cancel is used on the expression to try facilitate
simplification to zero (and an expression that motivated the change
has been included).

** don't use equals in sign and abs because it can be very slow

Thanks to Mario Pernici for finding good examples of when the
method used in equals is going to take a long time to solve.
The discussion that I had with him is on the PR page.