ENYO-266 Delay unchecking item until checking is done.

Issue
-------
Calling setSelectedIndex() directly and tapping checkboxItem have difference behavior.

Cause
--------
Tapping checkboxItem will select item first and then de-select previous item.
However calling setSelectedIndex() will de-select first in some specific case.

Fix
----
To guarantee same behavior between tapping checkboxItem and direct calling of setSelectedIndex(),
we should prevent unchecking work before checking is finished due to Group.active updating.

Enyo-DCO-1.1-Signed-off-by: David Um david.um@lge.com
Hi @DavidUm, I was thinking more that the code that rebuilds the selected indices (for `multipleSelection` mode) could be factored out, so we can call it from both `selectedChanged` and from `removeControl`. This would allow us to additionally call the `fireChangeEvent` method in `selectedChanged`, independent of the rebuilding. Please see the latest commit I pushed. Thanks!