Roles and adminitrative user

Changes included:
* User now will accept a list of roles instead of a single role
* User now has user_type field: only  "user" and "administrator" is used for milestone1
* check_permissions throw 403 if no permissions
* Other details are on : https://wiki.sourcefabric.org/display/NR/Milestone+1+-+Implementation+details

I used string rather than boolean to be able to use call it like this from terminal:
```
python manage.py <username> <password> <email> [admin='true']
```
This will be used to create an administrator for the first time. Let me know if you think we can still use True instead of 'true' or if you think there's a better way?