Concepts
Submodule is built around a function first-class support. It utilizes nature of functions to
- Share configuration, services
- Caching
- Composition
As such, submodule can be used to reuse configuration, functionality, group of services, group of codes. As they are all functions, they encourage testability and reusability