use ProactorEventLoop on Windows

Summary:
The default event loop on Windows doesn't support subprocesses, so we
need to set this. Unfortunately the event loop is a global, and there's
a bit of a race condition to set it before anything tries to read it.
(In particular, instantiating an asyncio Lock or Semaphore grabs a
reference to the global loop.) We set it here at import time, which
works fine for now, but it makes me worry that some future code
(probably in tests) isn't going to import our `async` module, and will
run into bugs as a result. I'd love to have a better place to put this.

Reviewers: sean

Reviewed By: sean

Differential Revision: https://phabricator.buildinspace.com/D109