Fixing NumericWidget.valueChangedSignal() return type.

The previous signal type would stop calling slots when one returned True - that's not suitable for a notification that several slots might need.
Fixed multiple undo entries created by color chooser and ramp editor.

- Slider.positionChangedSignal() now passes a reason parameter describing why the positions changed.
- Slider.changesShouldBeMerged() method returns True if two consecutive changes should be made one in terms of undo.
- NumericSlider.valueChangedSignal() now passes a reason parameter describing why the values changed.
- ColorChooser.colorChangedSignal() now passes a reason parameter describing why the color changed.
- ColorPlugValueWidget and RampPlugValueWidget use the above to perform appropriate undo merging.
Updated NumericPlugValueWidget merging code.

The mechanism used by ColorPlugValueWidget and RampPlugValueWidget was much better, so adopting it for NumericPlugValueWidget makes good sense.

- Added NumericWidget.changesShouldBeMerged() method.
- NumericWidget.valueChangedSignal() now passes a reason parameter describing why the value changed (documenting a previously undocumented commit because it needs to be documented in the Changes file for release).