Fixed non-const statics

Converted a non changing static float to just a const.
Converted a non varying function static std::vector<std::string> to be just a file static const * const [].
Made PFCandidate's const functions thread-safe

elementsInBlocks is actually a cache calculated from other members in the class. Changed the transient member to be a std::atomic<*> and then set the value in a thread-safe manner.
In addition, fixed some const casts caused by using a C style cast.
Fixed copy constructor and operator= for PFCandidate

The previous commit failed to call the base class operations for the copy constructor and operator= and therefore 'sliced' the object.
Fixed memory leak in operator= of PFCandidate

operator= would leak memory if the PFCandidate already had set elementsInBlocks_.
Fixed seg fault in PFCandidate(PFCandidatePtr const&)

Previous version of PFCandidate(PFCandidatePtr const&) constructor was calling operator=. This failed since elementsInBlocks_ pointer was not set to nullptr and operator= requires that variable to be properly set. Changed code to just call the PFCandidate copy constructor instead (new in C++11).
Merge pull request #1341 from Dr15Jones/threadSafeFixesDataFormatsParticleFlowCandidate

Multithreading fixes -- Thread safe fixes for DataFormats/ParticleFlowCandidate