Make Ctrl-D with long running commands work
New runner per command run, waitgroups

No data race, except a really rare race:

==================
WARNING: DATA RACE
Read by goroutine 73:
  os/exec.(*Cmd).Wait()
      /usr/local/go/src/pkg/os/exec/exec.go:307 +0x11e
  main.(*Runner).Wait()
      fzz/runner.go:96 +0x89
  main.(*Runner).KillWait()
      fzz/runner.go:89 +0x8c
  main.func·002()
      fzz/fzz.go:149 +0x145

Previous write by goroutine 72:
  os/exec.(*Cmd).Wait()
      /usr/local/go/src/pkg/os/exec/exec.go:310 +0x1ed
  main.(*Runner).Wait()
      fzz/runner.go:96 +0x89
  main.(*Runner).KillWait()
      fzz/runner.go:89 +0x8c
  main.func·002()
      fzz/fzz.go:149 +0x145

Goroutine 73 (running) created at:
  main.mainLoop()
      fzz/fzz.go:151 +0xa11
  main.main()
      fzz/fzz.go:237 +0xdfa

Goroutine 72 (finished) created at:
  main.mainLoop()
      fzz/fzz.go:151 +0xa11
  main.main()
      fzz/fzz.go:237 +0xdfa
==================
Found 1 data race(s)