Final commit for the initial modularisation pass:

- Broke part of m_scheduler off into a new module m_threadstate.  It
  contains ThreadState, VG_(threads)[] and some basic operations on the
  thread table.  All simple stuff, the complex stuff stays in m_scheduler.
  This avoids lots of circular dependencies between m_scheduler and other
  modules.

- Managed to finally remove core.h and tool.h, double hurrah!

- Introduced pub_tool_basics.h and pub_core_basics.h, one of which is
  include by every single C file.

- Lots of little cleanups and changes related to the above.

- I even did a small amount of documentation updating.




git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3944 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/include/pub_tool_profile.h b/include/pub_tool_profile.h
index df9df66..a04b989 100644
--- a/include/pub_tool_profile.h
+++ b/include/pub_tool_profile.h
@@ -31,10 +31,9 @@
 #ifndef __PUB_TOOL_PROFILE_H
 #define __PUB_TOOL_PROFILE_H
 
-// Define this to turn on profiling.
+// Define this to turn on profiling.  (But it's currently not working...)
 //#define  VG_DO_PROFILING   1
 
-/* Override the empty definitions from tool.h */
 #ifdef VG_DO_PROFILING
 #  define VGP_PUSHCC(x)   if (VG_(clo_profile)) VG_(pushcc)(x)
 #  define VGP_POPCC(x)    if (VG_(clo_profile)) VG_(popcc)(x)