Auth Module
- register validates password match and terms acceptance before creating user.
- login checks password hash and returns JWT token.
- forgotPassword returns success even when user is missing to avoid account enumeration.
- resetPassword validates reset token and token type password-reset.
- verifyEmail marks isEmailVerified = true for valid token.
- changePassword requires auth and old password verification.