Fixing warnings in CryptoMiniSat

Thanks to Stephen McCamant for spotting these
Re-licensing CryptoMiniSat to MIT licence in the headers as well

It has been documented that I have re-licensed this version of
CryptoMiniSat for an MIT license. It's now indicated in the header
files, too
Re-licensing CryptoMiniSat (cont.) to MIT licence in the headers as well

It has been documented that I have re-licensed this version of
CryptoMiniSat for an MIT license. It's now indicated in the header
files, too
added all contributor names
i
Made some relevant changes to headers to AST and Printer files. Added back David Dill's name which was inadvertently removed.
A change proposed by Stephen McCamant to remove dependency on boost library

Now CryptoMiniSat 2 only needs the boost pool headers to compile. This
significantly reduces the dependency need as there are now only 2 things
left:

1) boost noncopyable
2) STP executable command line parsing

Where (1) is trivial to remove, and (2) is not needed for library
usage.
Don't allow choosing more than one solver from the command line

"stp --minisat --cryptominisat" will no longer work. Only one must be
chosen. Fixing fuzzer so it takes this into account.
This underflowed according to LLVM sanitizer. Fixing.
Removing 'register' storage specifier

It's been deprecated for some time.
fuzztest: print stderr to console. We can then see clang sanitizer errors
Removing register storage specifier from another copy of MersenneTwister
Fixing div-by-zero in CryptoMiniSat
Revert "This underflowed according to LLVM sanitizer. Fixing."

This reverts commit 54c149fd5186a03d74acf5a7d7d032de135263a2.

It does underflow, but the underflowed value is not used. So, no need to
'fix' it.
Initial restructure of testsuite. I've not moved the generated
tests yet because it is unclear how this will work with the testing
infrastructure I have planned.

There are currently two main folders

tests/query-files : These are for query files that are inputs to
                    the STP executable

tests/api : This folder is for API tests. Currently there are
            only languages for C but if we gain other language
            bindings tests for this should go here.
Rename generated_tests to generated-tests for consistency with other
folder names.
Added stub CMakeLists.txt files for testing and remove old
testing command.
Added CMake code to detect python and lit and also added lit (llvm-lit)
to LICENSE_COMPONENTS
Added a basic lit configuration file (based off llvm3.4 lit.cfg
and lit.site.cfg.in)

The query-file tests can be invoked using a query-files-tests target.
This is a custom target rather than a CTest test because it seems
that CTest won't show llvm-lits standard output/error when invoked
from CMake.
Added support for setting the solver from llvm-lit command line
e.g.

$ llvm-lit --param=solver=z3 .