When I was working on a [isometric game engine/map editor](https://github.com/anacierdem/LIME) a few years back, I thought that it would be a nice idea to use some kind of a messaging mechanism to communicate between different components of the engine. Although that implementation...