[gym] Make sure environments are fully configured at init.
This release greatly improves the compliance with OpenAI Gym API by enforcing complete configuration of the environment at initialization. As a result, it is no longer possible to change environment properties such as the observation and action spaces, but it is still possible to update the load a different robot model as long as it is compatible with those properties. So it should not be limiting fr the vast majority of applications.
New features:
- [gym] Make sure the environment is completely initialized at 'init', which is expected by OpenAI Gym API.
Improvements:
- [core] Catch some seldom exceptions.
- [core] Enable to call 'initialize' multiple times for 'Engine*'.
- [core] 'isSimulationRunning' is set to True at the end of 'start' instead of the beginning.
- [gym] Force sending zero motor efforts at reset since the initial action is undefined.
Bug fixes:
- [core|python] Several critical bug fixes.
- [gym] Fix base env '_setup' method not called at reset.