fix(tooltip): tooltips will hide on scope.$destroy

When an element on which the tooltip is applied is destroyed (along with
its scope), the tooltip popup will now be closed if it was open.

Also refactored the $locationChangeSuccess binding as well to not waste
a run of `hide()` unless the tooltip was already open, following the
same pattern used in this bug fix.

Closes #410.