Initial pass at a custom select component