Secondary vertex clustering + explicit jet-track association

This PR adds the SV clustering capability to the SVTagInfo producer and adds the explicit jet-track association to the candidate-based IPTagInfo producer.

All changes completely transparent to the standard reconstruction.

**Update:** Rebased to CMSSW_7_3_X_2014-11-15-0200 and added support for SV clustering, jet flavor for subjets, and explicit jet-track association in PAT
I understand that std::abs() is overloaded for different numerical types but I don't see a problem with using fabs() since the intention is more clear. In particular, if somebody would strip the `std::` off, the output would change. Leaving as is.

 fatJetsHandle->at(i).pt() could in theory be zero but in CMSSW all jets have to have pT>=3 GeV (see https://github.com/cms-sw/cmssw/blob/CMSSW_7_3_X/RecoJets/JetProducers/python/PFJetParameters_cfi.py and similar files for CaloJets and GenJets). So the returned could be zero only if something was badly misconfigured in which case it is probably better if the code crashes. Should I maybe add a `cms::Exception`?