Shove all of the functional logic inside of a `Users` class so we can share logic