User management is one of those problems that rarely feels difficult enough to deserve much attention.
Until you implement it for the fifth time.
Registration, login, sessions, email verification, password resets, password changes, account deletion...