now resilient to empty string Number column

Ran into an issue recently where a nullable integer field, never set on creation of a new model, was causing problems after a JSON submit back to the server. Turns out that the serialization method on the client was turning all null things into empty strings (since fixed).

This change allows for that by making the Number comparison a little more strict. We now generate NULL for the query even if the value coerces to zero (which empty string does).