Fixes 500 when PUT as God User to user
Refactored and cleaned up Authentication service