Split the index into Content & General.

Splitting the index in half offers us a few advantages:
1.  Suggestions are based off of just the index being searched.
2.  Some speed improvement (theoretical)
3.  Ability to scale searchers for Content and General namespaces
separately.

It has three costs:
1.  Extra code complexity.
2.  Must perform a --reindexAndRemoveOk style config update after
changing wgContentNamespaces.
3.  Deletes made from the forceSearchIndex script require deletes
instead of one.

Annoyingly, I've added ascii folding for search queries to this commit
as well.

I've split the analysis and mapping configuration building code into its
own class so updateOneSearchIndexConfig.php is now all about how to
apply the config and it calls on other classes to build the config.

Change-Id: Ie2fe42bb584b7faf43ed90f68da1390e02a31bb2
Merge "Split the index into Content & General."