@Override
 public void deregisterStateSpaceListener(final IStatesCalculatedListener l) {
   listeners.remove(l);
   if (listeners.isEmpty()) {
     stateSpace.deregisterStateSpaceListener(this);
     registered = false;
   }
 }
 @Override
 public void registerStateSpaceListener(final IStatesCalculatedListener l) {
   if (!registered) {
     stateSpace.registerStateSpaceListener(this);
     registered = true;
   }
   listeners.add(l);
 }
 @Override
 public void sendInterrupt() {
   stateSpace.sendInterrupt();
 }
 @Override
 public void execute(final AbstractCommand... commands) {
   stateSpace.execute(commands);
 }