A basic Ruby workflow engine