Expand specialist document metadata from schema

When requesting extra fields such as case_type, we want to look up the label in the schema. This commit does that by passing around the index mappings, getting the extra fields and looking them up in the relevant schema. `allowed_return_fields` now returns the array `ALLOWED_RETURN_FIELDS` and the ones in the schema.
`document` is already a hash when it's passed in, so we don't need to call `to_hash` on it. We should probably also give it a more descriptive name to reflect that.