Added gdb remote tests to verify $Hg{thread-id}.

Added test to check that each thread reported by $q{f,s}ThreadInfo
can be switched to by $Hg, verified by a follow-up $qC.

Modified test exe to accept "thread:new" to create a new thread 
that runs and sleeps for 5 seconds.

@llgs_test/@debugserver_test now buffer output.
   
llgs and debugserver gdbremote protocol tests now collect $O notification
output into the context returned from expect_lldb_gdbserver_replay.
context["O_count"] is an integer indicating the number of $O packets
collected during the replay, and context["O_content"] contains the
accumulated hex-decoded text output by the inferior (stdout and stderr).

Modified the $O check test to check the accumulated output rather than
a direct $O packet.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@209560 91177308-0d34-0410-b5e6-96231b3b80d8
Remove some unnecessary comments from previous check-in.

Removed a "done" TODO comment.

Moved some helper methods to the top of the unit test.

Removed some commented out code I was considering implementing
before I came up with a better overall approach.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@209561 91177308-0d34-0410-b5e6-96231b3b80d8
Add a lock ivar to the Platform so that multiple Targets
trying to populate the list of trap handler names at
the same time don't conflict with one another.
<rdar://problem/17011969> 


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