[#2388] Replace Configuration's List<ExecuteListener> with
ExecuteListenerProvider[] to simplify correct and thread-safe client
implementations