refactor: Moved business-logic from `ChatRoomService` into `ChatRoom`
- Some essential business-logic -- the identification of mutated messages --
was buried in `InMemoryChatRoomService`.
- This business-logic was moved into `ChatRoom`, becaus otherwise, it
would have been necessary, to reproduce this logic in each and every
new implementation of `ChatRoomService`, which would have been exhausting
and errorprone.
- This allowed also cleaner code in `InMemoryChatRoomService`, that
can focus on the persistence-logic.
- The implementation of `MessageMutationException` and the look of the
accompanying problem-details hat to be refined accordingly.