Add an internal interface that allows the code to take advantage of multiple
cores by pushing subcomputations off into separate threads.  The interface
is not currently used.
Add Win32 support to the internal threads interface.  Also, add several asserts and fix a few typos.
Enhance implementation of the Win32 thread wait function.
Add an assert() to help verify the return code from the Win32 thread wait function.
Update the threads branch to include all the latest trunk changes.
Update the spellfix virtual table so that all OOM errors are reported out
to the application.
Cherry-pick [555fc07]: 
Changes to the thread routines to disable them when threading is turned
off using sqlite3_config().  Also merge all recent trunk changes.
Merge latest trunk changes into this branch.
Add an experimental multi-threaded capability to vdbesorter.c.
Use only a single OP_MakeRecord instead of two when constructing entries
to go onto a sorter.
merge fixes from trunk
Further enhancements to geneverated VDBE code for ORDER BY.
Remove a pointless OP_Once operation in ORDER BY clauses with LIMIT.
Remove an unnecessary temporary register allocation.
Avoid unnecessary moving of content between registers during an ORDER BY.
Omit the sequence value from sorter records used by GROUP BY queries that cannot use an index.
Merge all fixes and enhancements from trunk.
Enable four sorting threads by default in the command-line shell.
Remove the sequence values from sorter records used by ORDER BY as well.
Fix a problem in the code added by [707ea170b3] causing vdbesort.c to sort unstably.