Fix hide and show events calling element methods

This is a revised pull request for #7547, with appropriate unit tests, for the current release.

This pull request prevents unintended behavior (specifically botched animations and disappearing DOM elements) when Bootstrap is combined with MooTools Element Shortcuts, or anything else that might directly add .hide() and .show() methods to elements.

I know cross-library compatibility if not a goal of the Bootstrap project, but this change should be side-effect free.