Represents the behavior of an 'observable' actor.
Responsibilities:
Keeps track of observers via {{observersManagementBehavior}}
Provide a method for notifying observers {{NotifyObservers}}
Provides a template method {{CurrentStateMessage} for building
the default notification message out of the internal state
TODO: one thing that might be done is the management of multiple *topics* by
Keeping a different set of observers for each topic
Using a partial function (TopicType => Option[Any]) for building a topic-specific msg
Defining a "language" for expressing (combinations of) topics
Represents the behavior of an 'observable' actor. Responsibilities: