Improvements to TypedSelect component, now much better than the initial draft