ClassUtils: move deprecated methods to the bottom
Add utility class with generic type methods

This class recapitulates some of the functions from ConversionUtils
and ClassUtiles, as well as adding new functionality. The previous
methods will be deprecated in favor of those in this class.
Deprecate methods now available in GenericUtils
ClassUtils: tweak javadoc style
ClassUtils: refactor setValue method
ClassUtils#setValue: use more exact field type

Rather than calling field.getGenericType(), let's use the superior
GenericUtils.getFieldType method to get the more exact generic type.
Update unit tests for GenericUtils

This converts the tests of now-deprecated methods from ClassUtils and
ConversionUtils to test the analogous GenericUtils methods instead.
Merge branch 'generic-utils'

This branch reorganizes the lower-level generics-related helper methods
of ClassUtils and ConversionUtils into a dedicated utility class:
GenericUtils. The old method signatures have been deprecated.

The original idea was to use some of these methods to assist with better
ObjectIndex lazy object resolution, but it turns out that even with
clever use of generics reflection, it is not tenable to reliably detect
the type from the LazyObjects instance alone. So the new features of
GenericUtils, while very nifty and probably useful in the future, are
not in immediate use anywhere within SciJava Common.