some small changes; update ExtensiveTest
correct behavior of IsZero to exclude NaN from zeros