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.