Must take cint lock before calling TCint::CallFunc_Factory

Helgrind found that TCint::CallFunc_Factory indirectly updates
global cint state. Therefore one must take the cint lock before
calling the function. This was the only place (other than
TSelectorCint::Build) which calls this function without first
taking the lock.
Make G__FastAllocString cache thread safe

When using C++11, the cache used by G__FastAllocString utilizes
a non-locking thread safe circular buffer.
Synchronize construction of TApplication

It was possible for multiple threads to attempt construction of a
TApplication or for one thread to think the TApplication was already
constructed while another thread was in the process of doing the
construction.
Lock cache of TClassRef

Make sure to lock access to the TClassRef cache to avoid a data
race.
Protect access to IsCompiled

Make sure that IsCompiled is only set once the TStreamerInfo is
actually compiled. Also, make sure to lock and then check the value
again to avoid two threads from recompiling the same object.
Merge pull request #39 from Dr15Jones/lockConstOfTApplication

Synchronize construction of TApplication
Merge pull request #40 from Dr15Jones/anotherRoundOfThreadSafetyFixes

Another round of thread safety fixes
Merge pull request #35 from Dr15Jones/threadSafeFastAllocStringCache

Make G__FastAllocString cache thread safe
Merge pull request #37 from Dr15Jones/lockTCintCallFunc_Factory_calls

Must take cint lock before calling TCint::CallFunc_Factory
Fix bug in TAxis::Copy

The TAxis::Copy function did not correctly handle the case where
not all bins had labels.
Implement TH1::Clone

The previous Clone method called for a histogram relied on both
the I/O system and on Cint to function. This lead to either
data race conditions or synchronization points when working with
different  histograms on different threads. Using TClass to
create an empty instance and then calling Copy plus a bit of
cleanup allows different histograms to be uncoupled.
Merge pull request #43 from Dr15Jones/cloneHistograms

Implement Clone for histograms
Revert "Implement TH1::Clone"

This reverts commit 3a828c390bc11cfa348a6baf77b9849c3d4ce250.
Merge pull request #45 from ktf/revert-chris-changes

Revert "Implement TH1::Clone"
Revert "Revert "Implement TH1::Clone""

This reverts commit 9b16f29d5d52c7da4ff6079886db5d21959ac33a.
Always delete the array when the array size goes down to zero.

This fixes a problem seen by CMS when using TH1::Copy on histograms read
from a TTree.

This amend commit d31f38f98c66af492c20c3bf060df13d64c465f0 (circa 2005)
Make previous commit work with 5.34.18

The previous commit to this file only worked with newer versions of
ROOT. This modification makes it work with 5.34.18.
Merge pull request #46 from Dr15Jones/philippeFixEmptyArrayIO

Philippe's fix for empty array I/O