* WT-2554 Add initial C test framework.
With a few sample applications. Need to do further work to cleanup
the same applications and share as much code/style as possible.
* WT-2554 Fixup build errors.
* Fix compiler warning.
* Cleanup
* Ensure each test runs in a different directory.
* Update C test suite names and add copyright.
* Move test code into subdirectories.
* Replace test_util.i with a real utility library now that we have one.
Nothing needs to be an inline function.
Mostly cherry picked from 7c18420.
* Use WiredTiger getopt in C test suite for platform portability.
* Add a header comment to each test case.
* Add a C test suite entry auto generator
* Style, KNF
* Implement review feedback.
* Build test/utility library on Windows
* Add comment to script. Fix a printf.
Clean up test program #includes and add generic handling to memory allocation failures.
Now the test programs include <wt_internal.h>, the local includes
aren't necessary, and it makes lint sad.
using other __wt_XXX functions (for example, __wt_thread_id), several
include wt_internal.h.
Back out chunks of the last commit, instead, change the test programs
to use the WiredTiger library RNG functions, remove RNG functions from
test_util.i.
Break hardware.h up into gcc.h and lint.h (hardware.h is still there,
but it's mostly empty).
Remove need for gcc.h from various benchmarking/test programs.
Delete the session.sync method, replace session.sync calls with
session.checkpoint calls, setting "target=(uri),name=xxx".
Add a "drop" config key to session.checkpoint, providing a list of
snapshot names to discard. Replace session.drop snapshot discard
calls with calls to session.checkpoint.
Rework relevant documentation.