No need to build cryptominisat executable

Removing CMS' Main.cpp from source
Fix infinite loop in build system because we don't use SVN anymore!
STP will not compile under Bison 3.0 because a long deprecated feature (YYPARSE_PARAM macro) that the cvc and smt parsers use has been dropped.

This is mentioned at http://savannah.gnu.org/forum/forum.php?forum_id=7663 which says

"
  Support for YYLEX_PARAM and YYPARSE_PARAM is removed (deprecated in Bison
  1.875): use %lex-param, %parse-param, or %param.
"

This commit switches to using %parse-param
Merge pull request #15 from delcypher/compile_fixes

Compilation fixes from Dan Liew
Clear ArrayTransformer::ack_pair to avoid carrying stale information between queries.
Remove the ocaml-wrapper which has not been updated in a long while and no longer compiles.
Merge branch 'master' of https://github.com/stp/stp
Initial import of fuzzer

It needs:

* boolector/any other SMT solver with SMTLIB2 input to check for solutions
* python
* correct directory path for executable
* correct directory path of smtfuzz

It needs to be improved to:
* check SAT solutions (can be checked in poly/linear-time)
* use other solvers (it can, very easily, but it must be updated with
  their name, etc)

Closes #12
Remove LispVecPrintSpecial which is unused.
Remove LispVecPrinter and related code which is unused.
Implement BVSHL, BVLSHR and BVASHR bit-shift by expression operators from CVC3.
Initial commit to move to cmake

This commit:
* adds cmakelists files
* updates locations of some header files in #include-s
* updates genkinds.pl to make it a bit cleaner and allow an extra
  option, needed for this compilation
* adds automatic version number from git (release will have to do it
  differently, build should not fail for lack of git)

But it also breaks the make-based build (do we want it? If so, all we
need to fix are the #include-s). Also it lacks tests (CTest should be
used). Also, it doesn't check for bison and flex.

The build works with -j100, parallel builds should now succeed
without a problem (dependencies are correctly handled)
Update GetGitRevisionDescription CMake module
Rewrite instructions for building
Rename m4-extra/ to cmake/modules/

Since we are not using M4 in our build system, the former name was not fitting.
The new name mirrors the directory structure used by LLVM.
Removing Makefiles
CMake modules for identifying hash_set and hash_map

Part of the work needed for #21. The modules define macros for looking for
hash_set and hash_map under a variety of headers, namespaces, and class names.

The modules have only been tested on Clang 3.3svn on OS X, but are hopefully
easy to tweak if I got something wrong.

This also introduces an include/config.h file generated by CMake. (There may be
a better place to put it.) The remaining work involves changing source files to
use the macros defined in config.h.
Remove vestiges of the Makefile build system
Source changes to use the correct hash_set et al.

This is most of the remaining source changes for #21, but while investigating
further, I arrived at the conclusion that many of the hash functions for C
strings are incorrect, leading to #26. But, that can be addressed independently
of the CMake conversion.

The build succeeds now on Clang 3.3svn on OS X, and needs to be tested on at
least Linux as well.

The CheckCxxHash*.cmake modules could be rewritten to remove redundancy, and
need to set the -std=c++0x flag on C++ compiler invocations, but this isn't
possible without further source changes.
Clean up custom hash functions

This change eliminates most custom hash functions where possible, e.g., using
std::hash<std::string> instead of a custom hash that calls .c_str() on the
string and then hashes the address of the C string.

It also introduces a simplistic C string hash function and equality predicate
that can be used when the data stored in the hash container is actually a C
string.

This change has only been tested with Clang 3.3svn on OS X, and has not been
evaluated for performance.

I think this closes #21.