Support UTF-16/32 and user fallback encoding for folder search

The fallback encoding is taken from .tm_properties (attr.unknown-encoding).
Make bundle item queries thread safe

Note though that mutating the bundle item index is not allowed if other threads are querying it.
Fix issue with reference types used in assertions
Don’t assert that only main thread can launch a process

When we run our tests then we are likely not on the main thread when we indirectly test this API.
Update testing system for parse framework
Update testing system for bundles framework
Update testing system for Find framework
Update testing system for theme framework
Update testing system for selection framework
Update testing system for scope framework
Update testing system for plist framework
Update testing system for text framework
Update testing system for regexp framework
Better error reporting when copying git index

Also avoid a (sort of) race condition (related to meaningful error) by using fcopyfile().
Print error if scandir/lstat fails
Update testing system for layout framework
Remove test stack dump from symbolicate script

This sometimes show up in folder searches.
Don’t create NSSpellChecker tags until needed
Improve implementation of kill_process_group_in_background
Use libdispatch for threaded write to pipe