Add capacity for type aliasing module inputs

Added methods ot the Converter class for identifying the Input and
Output classes that can be converted between, and the populateInputs
method - allowing Converters the potential to point consumers to
potential input objects that can certainly be converted to appropriate
output objects.

Added API to the ConvertService to take advantage of the new Converter methods
- aggregating the potential input objects from converters matching a queried
output type.
Harvest convertible module inputs

When harvesting inputs via WidgetModel, inputs that are convertible to
the desired type will now be added to the object pool and automatically
converted when set as a module input's value.
Rephrase javadoc

Clarified the Converter javadoc, from suggestions by ctrueden.
ConvertService: return collection

Instead of returning a List of input candidates, we can generalize to
Collection.
Converter: remove abstract getXXXType methods

Instead of passing Class instances via constructors, concrete objects
should just implement the methods with an appropriate return value, for
consistency across SJC.
Refactor populateInputs method

* Now accepts Collection instead of just Set
* Renamed to populateInputCandidates for clarity
AbstractConverter: rephrase javadoc

Updated javadoc for clarity, as written by ctrueden
WidgetModel: rename converted objects collection

convertedObjectPool > convertedObjects, to simplify and avoid confusion
with "objectPool".
WidgetModel: typo fixes

Fixed typos in the WidgetModel javadoc.
Add getCompatibleInputs test

Added a unit test for the ConvertService#getCompatibleInputs method.
ConvertService: use LinkedHashSet

When collecting input candidates, use a LinkedHashSet instead of a
HashSet. This will preserve the ordering of the candidates.
Converter: add type parameters

Added generic parameters for input and output types of the Covnerter
class. The return values for getInput and getOutput type methods have
been updated appropriately.
Merge pull request #123 from scijava/convertable-inputs

Converters can now populate candidate input lists when their output types are requested.