this can well be implemented on the abstraction side of things.
i started this already, only remaining thing (easy to solve) is how to get the fact that we are doing 2d only into the notion of the gui...