distinguish between 0 and None in nsimplify

tolerance was being set even if the user wanted an exact value;
now if tolerance is 0 code that was formerly not run will be run.