Add header file that automatically starts main thread recording

The new header file has an extern global variable whose constructor
calls Threads::begin_main_thread(). This allows users of the library to
instantiate shared variables before the main() function is called.
Add static Thread::error() and Thread::begin_main_thread()
Use Thread API in benchmarks

The se::Thread recording API is largely in alignment with the C++11
thread library:

  http://en.cppreference.com/w/cpp/thread

Since threads are also to be analyzed, however, there are function
to access the underlying SMT solver. To date, this is the Z3 theorem
prover.