Revise the affinity returned for expressions flagged as 'generic'.  Fix for [9a8b09f8e6].
Add some more IN operator tests.
Merge fixes from trunk with this branch.
Change the VDBE to export the sqlite3MemCompare() routine and thus free
where.c from the dependency on vdbeInt.h.
Fix a problem with using stat4 samples of type text when estimating the rows visited by a range-query/skip-scan loop.
Add header comments on new routines.  Rework the sqlite3Stat4Column() routine
so that is (in theory) able to deal with corrupt samples.
Add further tests to skipscan5.test.
Add an OOM fault injection test for the new code on this branch.