This seems poorly symmetrical. The code to take a
string and turn into zero or more selected options in a select list is one line. The code to do the inverse is a story. Am I missing some
pattern for doing the later? I originally had it as one line without the null check and got a JavaScript null reference.