Add realm support

/to @ritch 
/cc @bajtos @dashby3000 
The test name should describe what is the expected behaviour of the system under test. Describing the test scenario is not enough.

The idea behind `it` is that the line with the test name should read like an English sentence, ideally both with "it" and "it" replaces with the suite name from "describe".

In this case:

```
it('reject credentials without realm')

it reject credentials without realm
User.login requiring realm rejects credentials without realm
```

Please fix all test names below too.