8247: use equals(0) in Expr.is_positive|negative

closes #8274 

Only attempt this test if the _prec is 1 since that happens
when a zero could not be computed with precision. In this case
some simplification or minpoly might be able to show that it is
zero.

Put a guard on try/minpoly to watch for NotImplemented and NotAlgebraic:

sympy/integrals/transforms.py", line 1818, in
sympy.integrals.transforms.inverse_hankel_transform
Failed example:
    inverse_hankel_transform(ht, k, r, 0)
    Exception raised:
        Traceback (most recent call last):
        ...
    NotAlgebraic: exp_polar(0) doesn't seem to be an algebraic element

See also issues #8349, #8352, #8353, #8354.
It's back to minpoly now that I have expand being used. Then at least existing tests won't make it hang.