Ecal regression refactor

This code refactors the ECAL regression inputs so a new single class gets the data rather than the same (buggy) code being copy & pasted over 3 files. It also fixes a divide by zero bug. It changes the behaviour of the pat::Photons but for the better in my opinion. 
Why do you need the fill() function, why not making this a constructor (now it looks like a double work - make the complicated EcalRegressionData and then refill it)?