extracted permit-authorize as individual module and updated structure and Readme