asyncio: sync with Tulip

* _UnixSubprocessTransport: fix file mode of stdin. Open stdin in write mode,
  not in read mode
* Examples: close the event loop at exit
* More reliable CoroWrapper.__del__. If the constructor is interrupted by
  KeyboardInterrupt or the coroutine objet is destroyed lately, some the
  _source_traceback attribute doesn't exist anymore.
* repr(Task): include also the future the task is waiting for
diff --git a/Lib/asyncio/unix_events.py b/Lib/asyncio/unix_events.py
index 1cb70ff..5f728b5 100644
--- a/Lib/asyncio/unix_events.py
+++ b/Lib/asyncio/unix_events.py
@@ -494,7 +494,7 @@
             universal_newlines=False, bufsize=bufsize, **kwargs)
         if stdin_w is not None:
             stdin.close()
-            self._proc.stdin = open(stdin_w.detach(), 'rb', buffering=bufsize)
+            self._proc.stdin = open(stdin_w.detach(), 'wb', buffering=bufsize)
 
 
 class AbstractChildWatcher: