move token generation logic into the entity
UserRepository can now persist followers