Updated anonymous tests

Added custom Jasmine matcher to easily verify the keys within a JavaScript object (in this case, a user auth payload).
Yup, sounds good to me.

I wonder if the null is ending up triggering an uncaught exception which gets dumped to the console but nowhere else.  In the JS client tests, we do this to make sure we don't accidentally ignore such exceptions:

      var showErrors = true;
      window.onerror = function (msg, url, lineNumber) {
        if (showErrors) {
          showErrors = false;
          alert("Warning: uncaught error: '" + msg + "' at '" + url + ":" + lineNumber + "'.");
        }
      };