Rework User Repository So That the Dependecy on IHttpContextAccessor Only Occurs At The High Level

Investigate changing UserRepository so that the human readable identifier (HRI) and the username are being set once (possibly in the middleware) so that we don't have a dependency on the IHttpContextAccessor in the actual repository level.

UserRepository is already scoped so a fix to reduce the dependency is to rework it so there there is a middleware at the start of the request pipeline that sets the value of the HRI and the username for the scope in variables associated with the service. The calls to GetHumanReadableUserIdentifier() and GetUserID() just return the stored variables.