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.

This is the case where CaloJets can be used. The MET uncertainty tool is able to work on both Calo and PFjets and this class is then templated to be able to work on both.