generalized simulation manager architecture to allow simulation manager to also be an event manager. The goal being to have similar structure to how warped organizes events. This design assumes the simulation manager must now when each object's next event is scheduled. conversely, warped assumes the event manager (set) will maintain the ordered set of next events and thus the simulation manager only needs to request (peek) the next event.