Provide people with tabs so they can use classes as well (#4284)
This provides people with the option to choose between the template
approach or the classes approach. This is a proposal to tackle
https://github.com/graphql/graphql-js/issues/1368
[Preview](https://graphql-7w0ort26u-the-graph-ql-foundation.vercel.app/)
This has been applied throughout the codebase now, however one of the
things I am uncertain about is how we offer `buildSchema` with the
GraphQLDefer/... directives? Should we add an option to `buildSchema`?
The exports defined in that chapter seem to only exist in v17 so we
should explicitly flag that.