forked from ROMEO/nexosim

Instead of producing a SimInit object, a bench is now expected to return a fully constructed simulation with its scheduler. This means that the client does not necessarily need to provide the starting time for the simulation. This start time may be hardcoded in the bench, or may be taken as a parameter for the bench configuration. This change make it possible for benches to do more, for instance to pre-schedule some events, or to do less, for instance by hardcoding the simulation time rather than accept an arbitrary simulation time.