fix bug causing NaNs in HDR ODTs

After conversion from CIE XYZ colorimetry to dispaly primaries, some values can go negative. There was no explicit handling of these negative values, which, when fed into the PQ transfer function were causing NaNs.

fix #41