Converting BaseUser into a trait.
Adding fields and methods for token-based one-off authentications.