Description
Currently, the Model class exposes a single inChannel and outChannel, which made sense for the HHNeuronModel, but is already out of place for the newer models (SpikeGen, VSteps), which only use the inChannel, as well as limiting the potential development of models with multiple channels of each type.
Likewise, the ChannelListModel, responsible for channel selection dropdowns, assumes the same pattern, presenting one input and one output option for any model, which exposes unsupported SpikeGen and VSteps output channels.
Therefore, data about input and output channels should really be accessible as abstract functions on ModelProxy, perhaps in a format similar to AssignmentData. To access instantiated channels, Model should provide abstract functions that return pointers to the appropriate channel when queried with a ChannelIndex, with the specific model implementation managing its channels internally.