use numerical evaluation only if there is significance
minor edits
unXFAIL ask(Q.real(NaN)) is None tests

Note: the old assumptions return None for queries about NaN whereas
the new assumptions (because NaN gets handled by _number) returns
False -- if it is important that this return None, the following can
be added to the pertinent handlers:

    NaN = staticmethod(lambda x, y: None)
further changes to handlers