# Functions
New returns a new graceful shutdown instance with the specified triggers.
# Interfaces
Callback is an interface you have to implement for callbacks.
ErrorHandler is an interface you can pass to SetErrorHandler to handle asynchronous errors.
Executor is the interface of execute func after triggering shutdown.
Shutdown is an interface implemented by shutdownController, that receives shutdown triggers when shutdown is requested.
Trigger is an interface implemnted by shutdown triggers.
# Type aliases
CallbackFunc is a helper type, so you can easily provide anonymous functions as shutdown Callbacks.
ErrorFunc is a helper type, so you can easily provide anonymous functions as ErrorHandlers.
ExecuteFunc defines the execute func.