* Improve enum compatibility by supporting return enum as well as values and names
* Handle invalid enum values
* Rough implementation of compat middleware
* Move enum middleware into compat module
* Fix tests
* Tweak enum examples
* Add some tests for the middleware
* Clean up tests
* Add missing imports
* Remove enum compat middleware
* Use custom dedent function and pin graphql-core to >3.1.2