made comm diagnostics thread safe
made comm diagnostics thread safe

This means that puts, gets, and forks can be issued from different
threads at the same time and they will all be counted.  However, note
that startCommDiagnostics()/stopCommDiagnostics() and
startVerboseComm()/stopVerboseComm() should always be issued by a
single thread.  They apply to the global state of the program; thus if
one thread calls startVerboseComm(), all threads enter verbose mode.


git-svn-id: 88467cb1fb04b8a755be7e1ee1026be4190196ef@15208 3a8e244f-b0f2-452b-bcba-4c88e055c3ca

sungeunchoi/chapel,hildeth/chapel,sungeunchoi/chapel,CoryMcCartan/chapel,CoryMcCartan/chapel,chizarlicious/chapel,CoryMcCartan/chapel,chizarlicious/chapel,CoryMcCartan/chapel,hildeth/chapel,sungeunchoi/chapel,hildeth/chapel,CoryMcCartan/chapel,chizarlicious/chapel,chizarlicious/chapel,sungeunchoi/chapel,sungeunchoi/chapel,chizarlicious/chapel,CoryMcCartan/chapel,chizarlicious/chapel,hildeth/chapel,chizarlicious/chapel,hildeth/chapel,CoryMcCartan/chapel,hildeth/chapel,sungeunchoi/chapel,hildeth/chapel,sungeunchoi/chapel,sungeunchoi/chapel