Convertible inputs

`WidgetModels` will now have their object pools expanded with objects that can be converted to the appropriate input type (assuming a `Converter` implementation exists with the appropriate `populateInputs` implementation and output type).

For example, given a converter between `Dataset` and `Foo`, a `WidgetModel` typed on `Foo` might now also see all the `Dataset`s in the `ObjectIndex` since they can be converted to `Foo`s if desired.