Fixed handling of parentheses in ContextQL parser.
Fixed SingleDocIdFilter not taking multi-segment indices into account.

It now correctly subtracts docBase from the given id for the current
index reader context.
Removed support for old field naming scheme.

This shouldn't affect you, unless you're working with an index that was
created with a really early BlackLab version (i.e. before 2013).
Read field information from indexmetadata.json file if it exists.

This allows us to store more information about fields, such as the
display name, its type (tokenized or not, numeric), the analyzer used
and the values used in the field (if not too many / too long).
Indexer writes indexmetadata.json, optionally based on a template.

The template can supply extra information about your corpus, such as
display names for fields, how/if to tokenize/analyze fields, and which
fields to use as document title, author, pid fields, etc.
Moved IndexStructure stuff to new package, separate files.

Also cleaned up old stuff and implemented recording values for metadata
fields in the index metadata file during indexing.
Slight change to how display names are "guessed" from field names.

Dashes are also converted to spaces now.