WidgetModel: fix getMin/Max javadoc

It was slightly incorrect before; the reality is that it only gives back
null if the type is unbounded (e.g., BigInteger). For any bounded type
(e.g., double), you will get back a minimum/maximum bound corresponding
to the absolute minimum/maximum of that type, even if no min/max
attribute was specified in the @Parameter annotation.
WidgetModel: factor out common boilerplate code

It is more concise to put the common numerical type conversion logic
into a private toNumber method.
ModuleItem: add getSoftMinimum/Maximum methods

This change also adds corresponding setSoftMinimum/Maximum methods to
the MutableModuleItem interface.
WidgetModel: add getSoftMin/Max accessor methods

These correspond to the new ModuleItem#getSoftMinimum/Maximum methods.
SwingNumberWidget: respect soft minimum & maximum

This requires a bugfix in scijava-common 2.0.2 to work as expected:
https://github.com/scijava/scijava-common/commit/12a35ee1b742a84b870a03a36717a3d9c8bd5876
BrightnessContrast: set soft minimum & maximum

This makes the behavior more consistent with ImageJ1: the Minimum and
Maximum fields now have sliders which are bounded by the *data* minimum
and maximum. You can still use the spinners to explicitly set the
minimum and maximum values outside the range of the sliders (by either
explicitly typing a number or by using the spinner arrow buttons), but
if you use the sliders directly you will be bounded by the data min/max.