Permissions API

Permissions/Groups API specification, minecraft/forge patches and default implementation by me and @AbrarSyed
no reason to make it less granular than vanilla is. especially when I expect most permission systems to have their own group systems and their own rankings. More granularity cant be bad.