Reduced file accesses made by IWLS, fixed zero lambda values causing crashes.

IWLS can receive event data directly so that it does not have to access the file every time it is called. This impacts the piecewise and baseline estimators, which call IWLS multiple times, previously necessitating multiple file reads.
Fixed an issue where lambda values of zero in the IWLS estimate would result in division by zero and cause infinite weights to appear. Weights are now set to zero if lambda is zero.