Split schema config to support multiple doctypes

- Split the elasticsearch schema config file down into multiple smaller files and merge them together in Ruby.
- Load schemas for multiple doctypes and merge the doctype schema properties together with some core schema properties.
- Support `DELETE` requests for arbitrary doctypes.

I'm expecting this to have a couple of rounds of feedback before it's deemed mergeable.
Instead of commenting 'nil' here and returning a nil-like result implicitly, would it be better to just return `nil` explicitly?