Refactoring: separating Authentication and Identity Management (code
only, no deploy)