Moved the code in ClangUserExpression that set up & ran the thread plan with timeouts, and restarting with all threads into a utility function in Process.  This required a bunch of renaming. 

Added a ThreadPlanCallUserExpression that differs from ThreadPlanCallFunction in that it holds onto a shared pointer to its ClangUserExpression so that can't go away before the thread plan is done using it.

Fixed the stop message when you hit a breakpoint while running a user expression so it is more obvious what has happened.

git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@120386 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/source/Target/ThreadPlanTestCondition.cpp b/source/Target/ThreadPlanTestCondition.cpp
index 0087dfc..b5f7db8 100644
--- a/source/Target/ThreadPlanTestCondition.cpp
+++ b/source/Target/ThreadPlanTestCondition.cpp
@@ -64,7 +64,10 @@
 void 
 ThreadPlanTestCondition::GetDescription (Stream *s, lldb::DescriptionLevel level)
 {
-
+    if (m_expression)
+        s->Printf("Thread plan to test condition: \"%s\".", m_expression->GetUserText());
+    else
+        s->Printf("Thread plan to test unspecified condition.");
 }
 
 bool