Revert "Revert "Extended permission query syntax""

This reverts commit 595a8af6c2e32d31f4b9df0dd504a8db0a9f9826.
Revert "Revert "Front-end permission checks""

This reverts commit 1512a6cae6eab4291586cf8037039dfab080305c.
Revert "Revert "Changed hard failure to warning for missing permission rules""

This reverts commit 687196d850bd03dfeba77014b295d51e228e1cc3.
Revert "Revert "Added inline documentation on permissions""

This reverts commit 6dfb9939c39060300fa4e0562d6f88fbfe6bbe85.
Fixed permission parser bugs
Added caching for permission checks.

Permission check results are cached per request, parsed permission rule
trees are cached globally to avoid parser overhead.
Updated acceptance tests to reflect current codebase
Added frontend_permission_checks to default config.yml
Making the "unlock" behave as desired for new records as well.
Whitespace.
Merge branch 'master' into feature/bolt2

Conflicts:
	app/view/_sub_editfields.twig