title: Python Asyncio subprocess never finishes
body: <p>i have a simple python program that I'm using to test asyncio with subprocesses: </p>
  
  <pre><code>import sys, time
  for x in range(100):
      print("processing (%s/100)    " % x)
      sys.stdout.flush()
  print("enjoy")
  sys.stdout.flush()
  </code></pre>
  
  <p>Running this on the command line produces the desired results.</p>
  
  <p>However, when called from asyncio, it never finishes</p>
  
  <pre><code>process = yield from asyncio.create_subprocess_exec(
      *["python", "program.py"],
      stdout=async_subprocess.PIPE,
      stderr=async_subprocess.STDOUT,
      cwd=working_dir
  )
  
  # this never finishes
  yield from process.communicate()
  </code></pre>
  
  <p><code>ps ax</code> shows this process is <code>&lt;defunct&gt;</code>, not sure what that means</p>