Tools for HCAL clustering with time and depths   in PF 

Adding code that is currently deactivated in the release to have complete functionality in Calorimeter clustering choices.
Additions:
-Rec Hit Producers to perform all PF hit reconstrcution from hits and not use CaloTowers
-New HCAL 3D clustering with depths 
-New PF HCAL Rec hit creator utilizing the 2 max samples 
-Generalization of the 3D clustering with time code to also run on HCAL
-Customization functions    to make possible the test of different reconstruction SCENARIA
for both ECAL/HCAL
 

(not significant here)
use [i] instead of .at in a loop that's already fixed size
better yet
```
for (auto aTest : qualityTests){
aTest->beginEvent(iEvent, iSetup);
}
```