Key Relationships
Mediator object
that centralizes (encapsulates) interaction behavior.
Subject and Observer objects
that distribute interaction behavior
so that when a subject
changes state
all registered observers are updated.