Basic implementation with demo
Replaced ActionConfig with ActionProvider which allows the implementation to return multiple instances of Action, each executed in its own thread.