Templated SoftLeptonTagInfo + PAT support for CandSoftLeptonTagInfo

SoftLeptonTagInfo has been templated to support candidate-based SoftLeptonTagInfo. This will allow the existing soft lepton taggers to fully support MiniAOD. The PAT support for CandSoftLeptonTagInfo has also been included.

The code changes implemented in this PR should be completely transparent to the standard reconstruction. The attached plots show the performance of the existing soft muon and soft electron taggers before and after the changes.

**SET (soft electron tagger)**
![performance_set](https://cloud.githubusercontent.com/assets/4885289/5050709/78012912-6bfe-11e4-9a8f-39df28863751.png)

**SMT (soft muon tagger)**
![performance_smt](https://cloud.githubusercontent.com/assets/4885289/5050712/7fbc57a8-6bfe-11e4-8675-05036abdac6a.png)

The PR as is will not compile because RecoBTag/SoftLepton/plugins/module.cc still uses the interface/  path. However, why do you change it at all, why do you want some header file(s) in src/ and others in interface/?