use "consumes" for RecoMET

I added "consumes" and replaced getByLabel() with getByToken() for the producers under RecoMET/METProducers as instructed at

 - https://indico.cern.ch/conferenceDisplay.py?confId=254366
 - https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideEDMGetDataFromEvent

Since "consumes" is a protected method of a base class of the producers, it cannot be called from classes in RecoMET/METAlgorithms which are used by METProducer. But to implement quickly, I called many "consumes" in METProducer and passed tokens to classes in RecoMET/METAlgorithms. The code is ugly now. I will clean up the code when I can.