BUG: Fixing missing char type and doc for Thresholding filters

In C++ char, unsigned char, and signed char are distinct type. The
AutoMinMax IVAR for histogram based thresholds are now disabled for
char types. Also the documentation is corrected to match the code.

Change-Id: Ib4a3e47a6466980fd4f6d03e9e25baa63c8081c1
COMP: LBFGSOptimizerBasev4 explicit Doxygen link request.

Avoid "::" for documentation, which is interpreted by Doxygen a class member.

Change-Id: If06ed8674de0e065193126bda1f2f66a74181024
Co-authored-by: Ali Ghayoor <ali-ghayoor@uiowa.edu>
BUG: avoid division by zero in versorOptimizerv4

Gradient magnitude is computed and used as a normalization factor in
itkVersorTransformOptimizerv4.
However, this factor will be zero when we try to register an image to
itself. In such a case, when the gradient vector is zero, we should
stop the optimization process at the beginning.

Change-Id: Ic4743c9f06d2940af8f6572e85f94bd699a43ffa