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.

Shouldn't ((*jet)->getPFConstituents()).begin() also work here? I just don't see the need to create std::vector<reco::PFCandidatePtr> inside a double loop . Or use a reference (*jetConstituents)?