These engines are not often used.
- Removing them from the constructor/initialization will allow to reduce contract code size.
- This will also simplify deployment
- In the future, if the interface of these engine changes, this will not impact CMTAT Base module and deployment version
As a result, setting these engines will require to call the setter function setDocumentEngineand setSnapshotEngine.
For the moment, the RuleEngine is still kept in the deployment workflow but we could also considerate to remove the RuleEngine in the future