feat(tabs): added onDeselect callback, used similarly as onSelect

Added an 'onDeselect' for tabs, used to trigger a callback when a tab leaves its "active" state. Format is almost identical to 'onSelect'.

Included unit tests (that are also parallel to the onSelect unit tests).