Support extra Select features

- honour existing Single Select
- Support Multiple
- Support Disabled
- Support Size
- Support width/height (generated UL tries to honour width/height of
original select)
- Support OptGroup's