Multi-select box support.

This includes auto-inference of how to do multi-select boxes when asked
to get the default widget for a list of some type.

Which also gives us the machinery to support 'String', how nice.