[turbofan] Smartify typing of NumberToInt32 and NumberToUint32.

According to ES5 9.5 and 9.6, NaN, -inf, +inf, -0 and 0 all truncate to
zero for both ToInt32 and ToUint32, so we can be a lot smarter in the
typer, loosing less information upon truncation (i.e. x | 0 and x >>> 0).

R=jarin@chromium.org

Review URL: https://codereview.chromium.org/739743003

Cr-Commit-Position: refs/heads/master@{#25412}