Add role-based authorization

Closes #3.
This one too