collab: Introduce `UserService` (#55449)

This PR introduces a `UserService` trait to Collab.

This is a step towards moving Collab away from reading user information
directly from the database.

We currently have two implementations for the trait:

- The `DatabaseUserService`, which leverages the existing query methods
to talk to the database
- The `FakeUserService`, which will be used in tests

Once we're ready, we'll be able to replace the `DatabaseUserService`
with a `CloudUserService` to fetch the users from Cloud.

Release Notes:

- N/A
dacf984596Marshall Bowers committed on 5/6/2026, 6:15:36 PM· committed by GitHubparent5bc4243
10 files changedLine totals unavailable