Create a HostThread abstraction.

This patch moves creates a thread abstraction that represents a
thread running inside the LLDB process.  This is a replacement for
otherwise using lldb::thread_t, and provides a platform agnostic
interface to managing these threads.

Differential Revision: http://reviews.llvm.org/D5198

Reviewed by: Jim Ingham

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@217460 91177308-0d34-0410-b5e6-96231b3b80d8