Visual stuff again

I have reimplemented a GUI integration again that is hopefully easier to understand, at least its interface comes with some nice helper functions that abstract all the atom and agent stuff.

I also made this more resilliant to exceptions. In case a exception happend during a world update the simulation loop will stop and print that something has happend. It can than be restarted without having to restart anything else.