Redesigned logic of select
method and added unselect
method:
select
method only selects passed items but don't clear selection from others items, if they are;unselect
method unselects passed items or all items if no one has been passed;- both methods do not change focused element — this is developer's decision, what to do with it.
Fixed bug: list blurs if mousedown has happened on one item but mouseup on another.