Server side validation and client side error reporting

Closes #118
Merge pull request #145 from keelerm84/feature/ensure-permissions

Server side validation and client side error reporting