Issue21 singleselect

While writing unit tests to make sure manual selection functions correctly, I noticed in single-select mode it's possible to select multiple items by writing to the selection observableArray. 
This pull request proposes one method for a fix - correcting from within selection.subscribe
It passes the unit tests added in commit 507631f