Improve the validation of auth_pass

If auth_pass is set, but the value is falsy (like an empty string), do_auth will not be
evaluated, so the callback of ``client.auth(pass, callback)`` will never be called. Instead of check
``if(auth_pass)``, now we use ``if(auth_pass !== undefined)`` to prevent such
situation.

Although pass the empty string or other falsy sutff as a password make no sense, but we should leave this validation to the redis and at least let the callback of ``client.auth(pass, callback)`` be evaluated.