Beginning work on issue #15 (generic permission system)