8046;16.1-3: enhance and correct Add._eval_is_(positive|negative)

The checks for a.is_zero were removed because those are already
handled outside of the loop.
8046;17: Add._eval_is_imaginary modifications
Merge pull request #8162 from smichr/8046

Add._eval_is_(pos, neg, imag) changes