Work towards ThresholdOverlay handling dataset rebuilds

ThresholdOverlays are now designed to update if an underlying Dataset goes through a large change
(such as someone calling dataset.setImgplus()). Note however that this code is not yet testing as
correct.