Make mutable in EventSetupRecord atomic

The transient access bool is now atomic since multiple threads could attempt to change it.
Avoid having EventSetupRecord begin parsed by ROOT

The EventSetupRecord now uses and std::atomic which is unparseable by
ROOT. Changed cases where ROOT parsed the classes to use forward
declarations instead. This did require adding the missing include
to a source file.
Merge pull request #3725 from Dr15Jones/threadSafeMutableInESRecord

FWCore/Framework -- Make mutable in EventSetupRecord atomic