# Functions
New creates a new controller.
# Variables
Providers holds all known providers, they must be added to it to enable them for use.
# Interfaces
Controller manages the state of the providers current context.
DynamicProvider is the interface that a dynamic provider must implement.
DynamicProviderComm is the interface that an dynamic provider uses to communicate back to Elastic Agent.
# Type aliases
ContextProviderBuilder creates a new context provider based on the given config and returns it.
DynamicProviderBuilder creates a new dynamic provider based on the given config and returns it.
VarsCallback is callback called when the current vars state changes.