Factorial2 (!!) of an integer is an integer

`factorial2` of an integer is now known to be an integer. This is done via an implementation of `_eval_is_integer`.
a and b only differs from fuzzy_and when a,b=None,False. So this would only fail for obtuse input like `factorial(-5+sqrt(2)-sqrt(3) + 1)`...but since we can get it right, let's do so.