Add new propagation worker and rewrite propagators to use it
Create a generic electronic worker which provides all the routines necessary to perform propagations for the various propagators.
- Forbidding to use QOCT and CN with gauge field as they do not support it.
- Fusing exponential and density calculation for ETRS and EXP_MID.
- Split the AETRS and CAETRS propagators into two routines, as there is no code to reuse
- Add the missing extrapolation of the vtau for MGGA with exponential midpoint rule.
- Fix a missing allocation/deallocation for CAETRS with MGGAs.
Reorganization of the code of the propagator.
- I have checked that my code follows the Octopus coding standards
- I have added tests for all the new features added in this request.