fix track algoName for HLT tracking

as already pointed out in 
https://github.com/cms-sw/cmssw/pull/5807

some updates were needed both on the TrackBase side and on the DQM one
in order to properly deal w/ the tracking algoName @mdhildreth 

new enums have been defined in the TrackBase
for handling the steps used by PFJet, PFMET and PFTau @HLT
for the other flavours of the tracking (used by leptons isolation, b-tagging, PFTau regional and displaced jets)
for the timebeing a single enum has been defined "hltIterX"
those tracks are indeed not used by the PF algorithm @HLT

we need also an update on the HLT menu configuration side
in order to synchronize the algorithName parameter in each TrackProducer module
defined w/in the HLT menu

as soon as both this PR will be integrated and the update of the HLT menu will be available in the standard workflow,
plots spotted by stoyan will be --finally-- properly filled 
as they are in attachment (as result of my test)

hltIter0HP
![hltiter0hp_algo](https://cloud.githubusercontent.com/assets/4946419/4991948/8aecdee2-699a-11e4-88ea-5d65f7f865ea.png)

hltIter2Merged
![hltiter2merged_algo](https://cloud.githubusercontent.com/assets/4946419/4991952/99cd9550-699a-11e4-9d17-9da8d2693be3.png)

Now that this creative implementation of  ```algoName(algorithm_)``` call is more obvious,
why not make the ```static std::string TrackBase::algoName(TrackAlgorithm a) ``` and scrap this long switch statment?