Large reorganisation. Header files have been split out into their own
include/stp folder and library code has been moved into to the relevant
folders in lib/ . The stp tool has been moved in tools/stp.

This layout mimics that of the LLVM project which is a very well
organised project.

The motivation for doing this was the disgusting relative #includes
that were all over the place. These made compiler errors/warnings hard
to read and made it impossible for an application external to STP use
the header files!

``include/stp`` is supposed to contain public header files that would be
installed so that STP can really be used as a library. This probably
isn't done correctly right now because

- Some headers that should be internal should be in lib/
- The use of the extlib-abc, extlib-constbv mess this up. We should
  really be using these as a proper external library that the user
  has installed and build against those header files. We also shouldn't
  be bundling this library inside STP!
- The minisat and cryptominisat2 SAT solvers are mostly in lib/.
  This feels messy, again we should really building against installed
  versions of this library and not bundle the library inside STP!
Fix running C-api tests
Moved python bindings and made running tests work (they don't pass but
you can run them now...)
Make sure the c_interface.h header file gets installed.
Removed old src/ directory
Try to fix compilation issue where ToSat requires ASTKinds.h
Fix STPManager build dependency on ASTKind.h
Move tools/stp to tools/stp-cli as requested by Ryan Govostes.
I guess this makes it more explicit that it contains the command-line
tool but every folder in tools/ should be a command line tool