Controller JSON Schema

This replaces #175.

- [ ] Each schema should reference one or more [examples](https://github.com/flynn/flynn/blob/6553a5fce8bc6637267b45a88b8de67cbec879b4/controller/examples/examples.go#L60-L95) using a custom `examples` keyword. The value should be an array of objects with a single string property `name` referencing an example (we will need request and response schemas for each example to do validation which will add an additional property).
- [ ] Generate documentation by combining schemas with examples