Event::ExecFlow provides a ligh level API for defining complex flow controls with asynchronous execution of external programs.