Protect global list of functions from concurrent access

The list returned from TROOT::GetListOfFunctions needs to be protected
from concurrent access to allow use of TFormulas on different
threads.
Protect global list of TFormulaPrimitives
Thread safety fixes for TCint

-use thread_local for statics which are being used as return values
-use C++11 initializers to allow static containers to be const
-add lock to protect fgSetOfSpecials
Make function static return values thread_safe

Funciton level statics which are being used as return values from
the function are changed to thread_local. This is needed to avoid
multiple threads changing the values while they are being used.
Added missing locks when calling gCint

Added calls to the gCINTMutex lock when calling gCint methods. These
are needed to avoid problems while concurrently using TFormula.
Make TClass::fIsAMethod setting thread safe

Caching and initialization of TClass::fIsAMethod have been changed
to make them thread safe and for calls to the TMethodCall can happen
concurrently.
Call TROOT::GetGlobalFunction instead of GetListOfGlobalFunctions

Since the global function list needs to be locked to be thread safe,
the simplest way of avoiding having to take the locks outside of
TROOT is to call GetGlobalFunction instead.
Lock access to gROOT->fGlobalFunctions

The list of global functions must be protected from simultaneous
writes/reads.
white spaces
Use #if __cplusplus >= 201103L to mark C++11 code
thread_local -> TTHREAD_TLS
Fix #if direction
In TStreamerBase::InitStreaming don't search on checksum when we can't.

This is one of two fixes for ROOT-6765 (and possibly ROOT-6779)

Conflicts:
	core/meta/src/TStreamerElement.cxx
In TFile::ReadStreamerInfo properly handle the case of large files

This is the second of two fixes for ROOT-6765 (and possibly ROOT-6779)
Now at least for me, all macros are working, APART from the parallel coordinates, which seems to work fine until the end when it then crashes (after nicely producing the desired plots, though...
Protection added against gPad==0 in order to fix https://sft.its.cern.ch/jira/browse/ROOT-6777.
The copy constructor was incomplete for some TLegend attributes.
It fixes https://sft.its.cern.ch/jira/browse/ROOT-6793
keep only those macros compiled that really need to
TNetXNGFile: Make it possible to disable querying for readv limits

(cherry picked from commit e71da30898eba2fbe0bab580d33332f5976343e4)

Conflicts:
	net/netxng/inc/TNetXNGFile.h
TNetXNGFile: Workaround problem with dCache returning nonsense readv parameters

(cherry picked from commit efe4de5aa3873198822112710baaf60eb0db55cf)