investigating the "Observer Pattern" used in the event framework for pyglet
very similar to asynchronous