Moved allowUnselectNode outside to control only click event

Now `allowUnselectNode` is only a flag which controls the behavior of
`TreeStrategy`, when invoking `unselectNode` or `toggleNodeSelection`
it does not affect anything