Projections now have a flag _isValid that can be tested with valid() and failed(). The flag is true by default, but can be set to false by calling fain() inside project() if something goes wrong.
Introduced UndressBeamLeptons to get lepton beam momenta where the ISR photons have been subtracted. This can now be used in the DISLepton projection.