Fix NaN assumptions

NaN now has is_finite as False, and all other assumptions that would be
deducted from this are False as well (like complex, or zero). Previously they
were None, but they should be False, as NaN is not zero, and is not in the set
of complex numbers.

Fixes #8045.
Set I.is_real to False

This is now necessary to set explicitly because is_imaginary includes zero, so
it does not imply not is_real.
Set S.Zero.is_imaginary to True
keep minimal definitions of number attributes