Mutex tidy up.

Condition variable names needn't be strings - the use was leading to valgrind
warnings.
Don't fail AssertSharedHeld when self isn't known.
Allow gtest thread chance to merge to avoid memory leak.
Make barrier test log output more human readable.

Change-Id: If1923c69a2965d933036c496dc5b1d64ec887db2
diff --git a/src/base/mutex.cc b/src/base/mutex.cc
index 912e7fd..86356a9 100644
--- a/src/base/mutex.cc
+++ b/src/base/mutex.cc
@@ -690,7 +690,7 @@
   return os;
 }
 
-ConditionVariable::ConditionVariable(const std::string& name, Mutex& guard)
+ConditionVariable::ConditionVariable(const char* name, Mutex& guard)
     : name_(name), guard_(guard) {
 #if ART_USE_FUTEXES
   sequence_ = 0;