# Functions
ExecWithInterval executes a function with a dynamic interval the interval is getting multiplied by 2 in each round, up to the given limit and then it starts all over 1s > 2s > 4s > 8s ..
ExecWithTimeout triggers some function in the given time frame, returns true if completed.
NewExecutionQueue creates a new instance.
Retry executes a function x times or until successful.
RetryWithContext executes a function x times or until successful.
WithoutErrors disables errors.
# Interfaces
Stopper represents the object used to stop running functions should be used by the running function, once stopped the function act accordingly.
# Type aliases
ExecQueueOpt enables to inject more parameters.
Fn represents a function to execute.
Func is the interface of functions to trigger.
StoppableFunc represents a function that returns two boolean to help with its execution stop will stop the interval, while continue will make the interval value to remain the same if both are false, the interval will be increased (x2).