[gym] More generic observer and pipeline design support
Observers and controllers can now be mixed freely, with independent update period.
New features:
- [gym] Add 'PartialFrameStack' wrapper and 'build_wrapper' utility.
- [gym] Add dedicated 'observe_dt' attribute to observer interface.
- [gym] Rework observation block to support multiple update period and more flexible pipeline architecture.
Improvements:
- [core] Enable to access sensors group shared data matrices by reference without copy.
- [core/python] Do not cast-away constness when sharing memory between Eigen Matrix and np.ndarray.
- [python] Handle more C++ exceptions.
- [gym] Refactor 'reset' of gym environment to fix initial state inconsistency and make everything simpler.
- [gym] Factorize pipeline wrappers 'step' method.
Bug fixes:
- [python/viewer] Fix display in Spyder IDE.
- [gym] Fix set seed simulator. Fix cartpole 'compute_command'.
- [gym] Fix 'write_log' missing format.
Miscellaneous:
- [gym] Rename 'gym_jiminy_common' in 'gym_jiminy' for clarity.