minor, negligible changes
I think this is the structure for observers/observables.   I am calling observers `Listener`s, and observables `Observed`s