Mediator Design Pattern Real World Example