Integration of MVA/NoPU MET in central release

This PR contains the MVA and NoPU code the JetMET group wants to make available centrally, and eventually computed at the RECO and miniAOD level after discussion with the RECO/AT group.

This PR add the package RecoMET/METPUSubtraction, and add the pat configuration files needed for the MET uncertainty tool.
Several fixes and cleaning are also done on the patCaloMET configuration, the pileupjetid configuration, the pileupJetid training needed by the MVA and NoPU MET.

Automatically ported from CMSSW_7_2_X #5188
I am always bit uncomfortable with the use of std::abs as it can conflict with abs depending of the library used. Corrected nevertheless, as you say it is recommended.