[core] Rework time handling

Introduce two modes to handling time.

The classic one is 'best effort', i.e try to reach the desired fps, but
staying in real-time (i.e. one simulated seconds is one computer
second). To do that, the simulator may drop frames. The physical step
will jitter.

The fixed time mode computes all the frame, which may be slower (or
sometimes faster) than real-time. All physical steps are the same, which
must help the repeatibility of experiments.

This commit address part of issue #388.
[core] Add computation of statistics for morse_time
[core] Do not mix milliseconds and seconds ...
[core] Add a name for each instance of Time Management
[services] Add a set of service related to time management
[pymorse] Add time management associated request

Add support for pymorse.sleep() and pymorse.time(), with equivalent
semantic to the associated method from module time.
[testing] Work in progress to remove usage of time module

it is replaced by equivalent call to pymorse method, which deals
properly with the simulated time.
[testing] Allow to pass the unit-test using different time modalities