Add basic roles for users

- Embed role in users. Not sure if this is a good idea...
- Add simple routes to manage bucket's members
- Add permissions checks

I still have problem with password...
Merge branch 'refs/heads/master' into asm-prs/14

Conflicts:
	client/source/controllers/buckets_controller.coffee
	client/source/templates/entries/list.hbs
Make the first installed user an administrator by default
Simplify
Nix validation hacks
Merge branch 'master' of https://github.com/asm-products/buckets into asm-prs/14
Merge pull request #1 from davidkaneda/asm-prs/14

PR updates
Some reformatting/refactoring

`hasRole` can now take an array of roles, and can be passed a resource as a document or a string (resourceType), or no resource at all, giving us three levels of roles:

```
User.hasRole('administrator')
User.hasRole(['billing', 'designer']) # Globally
User.hasRole(['editor', 'administrator'], bucket) # For this bucket
User.hasRole('contributor', 'Bucket') # For all buckets
```

This should add some flexibility for the future. Also:

* Uses underscore to clean up some Roles stuff
* Better checkbox helper
* Still need more tests...
* Very basic stab at UI, but not working yet
Configure Nodemailer

* Update config to use NODE_ENV specific settings with defaults
Merge pull request #24 from Pletcher/master

Set NODE_ENV=test before running server-side tests
Merge pull request #23 from chiplay/nodemailer

Setup Nodemailer #68
Fix the config

Add check for config[env] (since ENV=test was causing an error), move prod db to production config.
Merge pull request #2 from davidkaneda/asm-prs/14

Asm prs/14
Fix checkbox in UserEditView
Merge remote-tracking branch 'assembly/master' into acl
Merge pull request #14 from oliger/acl

Roles
Add Template model
Created a Template model for storing templates in the database.
Adding this commit as a starting point before diving into
API changes.
Add Template model on backend and begin implementing db/fs syncing
Write tests for template updates
Add test file