Rename tooltip visibility events to be safer

This relates to #6921 and #7063 where the `hide` event send from a tooltip causes unexpected behaviour with some configurations.

In the issues mentioned the unexpected results were due to prototype adding `hide` functions to `Element`. Well, that's prototype's problem.

This root issue is wider though; the current `show`, `shown`, `hide`, `hidden` events are too generic and can very easily conflict with code outside of bootstrap-tooltip. These events are being triggered on the element itself, how likely is it they're unique? This change safeguards against current event-name conflicts and prevents a shit-storm of future "I was already using that event name" issues.

This commit renames the events tooltip sends when visibility changes using Javascript-esq `tooltipshow`, `tooltiphide`, `tooltipshown`, `tooltiphidden` event names.

Thanks :tangerine: :yellow_heart: