Add unit tests - one new issue uncovered:
-In single-select mode, nothing prevents one from manually selecting multiple items