Add tests for user model

Changed password implementation because I has some strange validation errors...

Now `password` is a virtual. The bcrypt digest is stored in `passwordDigest`.
Change error message :)
Nix User#addRole
Merge pull request #29 from oliger/user-test

Add tests for user model and change password implementation
Merge branch 'master' of https://github.com/asm-products/buckets
grunt-mongo-migrations

Avoids errors and provides migration path for recent password switch