This should make possible to use less monitors/locks and make more understandable the code. At the same time is will make easier extend the simulator.