Dynamic fields

Allow configuration like:

```ruby
config.add_facet_field '*_facet'
config.add_show_field '*_display'
config.add_index_field 'title_*'
```

Additional configuration parameters can be added using the block-syntax, e.g.

```ruby
config.add_index_field 'title_*' do |field_config|
  field_config.label = field_config.field.humanize.gsub(/Title /, '')
end
```

Fixes #578 (or, close enough)