Updated anonymous tests

Added custom Jasmine matcher to easily verify the keys within a JavaScript object (in this case, a user auth payload).
Okay, so weird thing happening. The timeout issue I was seeing only happens when I send in `null` to the validate method. If I send in some other invalid object, the test fails immediately. Super strange but this makes me lean towards getting rid of the try/catch and just letting it timeout in the off change the input is `null`. It sounds like that's your preferred way to handle this anyway, so now we are in agreement :)