Rewrite createSourceEventStream to avoid use of `async`
Rewrite createSourceEventStream to avoid use of `async`

We should avoid a runtime dependency on `async` support because we want
the graphql package to work in as many contexts as possible with minimal
configuration.

As of 0779c36f9ba621d2d4a045, even a simple invocation usage of the
package like the one in the tutorial (http://graphql.org/graphql-js/)
will cause an error in the absence of the regenerator runtime:

    ReferenceError: regeneratorRuntime is not defined

Rather than depending on the runtime, let's just rewrite the function to
not use `async`. In order to do this, we have to drop the use of the
`await` keyword inside the function and make it explicitly return a
promise.

Flow and tests pass.

There is a fair bit of whitespace-only change in this, so you may want
to view the diff without it (with `git diff -b` or even `git diff -w`
for example).

Closes: https://github.com/graphql/graphql-js/issues/1006

enaqx/graphql-js,enaqx/graphql-js,graphql/graphql-js,enaqx/graphql-js,jjergus/graphql-js,graphql/graphql-js,gabelevi/graphql-js,baer/graphql-js,tgriesser/graphql-js,jjergus/graphql-js,graphql/graphql-js,baer/graphql-js,gabelevi/graphql-js,tgriesser/graphql-js