Tezt/Cloud: Move the configuration into its own datatype
What
Use the fresh module types in tezt-cloud library to put the agent configuration there.
Why
Soonish, tezt-cloud will have its own configuration that we should distinguish from the agent configuration. This MR aims at solving that.
How
This add a new layer and cleans-up a bit the module env interface.
The idea is to have now the following abstraction layer:
- Module
Typesis at the bottom and declares the types used by the library - The module
Typesalso declares default values that can be used by the moduleCli - Module on top of
Clisuch asAgentleveragesCliandTypesto implement smart-constructor (in the future, those smart-constructors will also rely on the configuration of tezt-cloud)