cast choices and selected values to strings before comparing

this is better than using === because it correctly handles edge cases where
either choices or values are cast to numbers

fixes #26