Refactoring Authority class
Merge branch 'refactoring_authority'