Search string normalization and diacritic stripping
Addresses the first two stages in #793.
The diacritic stripping is a bit rough, but hopefully OK for searching. Diacritics exist in specific blocks in the UCS, so we could get more specific than this if we need to exclude specific scripts or even specific marks from stripping.
This could evolve into a stripped alternates system, like the logic used by g_str_match_string()
but maybe a bit more universal than ASCII.