The Event class is used to inject models into a running
simulation, to route input and output within a network
model, and to receive notifications of output by an
EventListener.
The EventListener interface is implemented by classes
that will register with a Simulator to receive notification
when changes occur in a model's state and output.