Permission: Initial implementation

Ref #32