getting the repository injected into middleware.

 - registering the repository into request services as a scoped service.
 - accepting a repository instance through the middleware ctor which is
   constructed per pipeline lifecycle.
 using the injected repostiroy to display the content

  - _repository is now being used to get messages inside the Invoke
    method.
  - look for NumberOfMessages to display the messages.
made InMemoryFarticusRepository disposable.

 - InMemoryFarticusRepository is now implements IDisposable and it throws
   if it's being used after it's disposed.
 - This things is meant to be used per request lifecycle and it's not
   thread-safe (just assume that, it's actually thread-safe). However, as
   the middleware is getting this through the ctor, it's constructed per
   pipeline lifecyle.