Feature: Add proper exceptions to be thrown
Feature: Implement Permissions hook