Change the 0x800 bit of SQLITE_TESTCTRL_OPTIMIZATIONS so that it disables
the loading of STAT3 and STAT4 content, not just the using of that content.
Change the internal name of that bit to SQLITE_Stat34.
Disable the use of strchrnul() unless specifically enabled by compile-time
options.
Implement sqlite3_create_collation() by invoking 
sqlite3_create_collation_v2() with a NULL destructor argument.  This saves
a little space.
Get the likelihood() functions working on operators like BETWEEN that
create virtual terms in the WHERE-clause analysis.
Honor a high likelihood() on range constraints.
Enhance the automatic index logic so that it creates a partial index when
doing so gives the same answer for less work.
Do not use virtual (and hence redundant) WHERE-clause terms to restrict the
content of a automatic partial index.  Show when an automatic partial index
is used in the EXPLAIN QUERY PLAN output.
Increase the resolution of the second parameter to the likelihood() SQL
function (the probability value) so that it can handle probabilities
as small as 0.00000001.  Formerly, it ran out of precision at 0.001.
Merge trunk with this branch.
If a free-slot is found within a page, but using that free-slot would fragment the page further and there are already at least 60 fragmented bytes, degragment the page. This matches the behaviour of the trunk.