What about this?

```ruby
dial_with_apps ['user/usera', 'user/userb'] do |dial|
  local |runner| do
    runner.map_app '1' do
      say 'Gosh you sound stunning today leg a'
    end
  end

  remote do |runner|
    runner.map_app '2' do
      say 'Gosh you sound stunning today leg b'
    end
  end
end
```

I really don't like that conditional. The behaviour and the code are confusing and unexpected. We need a cleaner DSL. Do you think you could implement the above, or do you have any better ideas along those lines?