# Functions
NewController creates a new controller with given name and type and runs the function at regular `interval`s of time without blocking.
NewManager creates a new manager with no controllers.
# Structs
Controller runs a specific operation infinitely until the context is canceled at regular intervals of time.
Manager manages multiple controllers and running at the same time.
Opts are the options required to create a new controller.
RunStat are the statistics for single run of the runner function.
# Type aliases
RunnerFunc is the function that runs after each tick.