Hide C++11 features from header files

We want to compile third party libraries using these fastjet
headers using compiler options that may not include C++11 support
but still link to our libraries built with C++11. This requires
all C++11 constructs to either be removed from the headers or
hidden (in the case where their pre C++11 equivalents are binary
compatible).

This change also attempts to make it possible to compile all of
fastjet with a non C++11 compiler.

In addition, we have attempted to fulfill the request by the
fastjet maintainers to comment the CMS changes and explicitly state
that the changes are not sanctioned by the fastjet maintainers.
@Dr15Jones, can you please update the patch with this fix?
@davidlange6, with this fix I was able to run full runTheMatix and 7 workflow failed (517-539, same failing in IB). So if no objection I would like to include this in 72X IBs.