Add lots of permission checks

Closes #47