- Improved interface for QueueSimulation Listeners: each Listener is added solely so that no List has to be created
- Added class QueueSimSignalEngine to QueueSimulation to improve modularity
- Added events for the state change of SignalGroups
- Added methods to SignalSystemController interface: getter and setter for SignalEngine + access to Map containing SignalGroups
- SignalSystemController has a Map of SignalGroups that is initialized by Engine
- Added some helpful implementations to abstract class AbstractSignalSystemController
- Improved DefaultPlanBasedController: Events are thrown, interim times are considered and control flow is improved by QueueSimulation events