Core: Remove the newly introduced global hooks until we have consensus

Between locating the hooks in `QUnit` or `QUnit.config` and making them
simple setters and callback lists (like QUnit.done et al) and upcoming
plans for nested suites, we decided not to release this feature, for now.

I'm keeping the abstractions for hooks in place, so it should be trivial
to bring this back in whatever form we decide on later.

Effectively reverts 5ee31a083af3b17187f90cde54885bcc46d3dd8f and follow-up
commits.

Fixes #665
Ref #633
Ref #635
Ref #647
Build: Upgrade to commitplease 2.0.0

commitplease now accepts "[tmp]:" and similar to temporary commits,
useful while updating pull requests that are squashed later.
Core: Remove constructor

This constructor were implemented on @1039a2c, to tell if the
callback methods have been overwritten on the actual QUnit object.

It doesn't work for backwards compatibility and the old and deprecated
way to assign callbacks doesn't work anymore.

Making this change won't affect anything on the current API, even
assigning a new value on any callback function. The effects are the
same with or without this commit, proving the removed code is useless.

Closes #667
Core: Reorder code for cleanup
Core: Cleanup the logging callbacks factory
Callbacks: Restore and warn if some logging callback gets modified

Also fills the stack.js tests to verify the warnings
Async: Fail assertions after existing assert.async flows are resolved

Improves test coverage, cleans up tests for consistency. Updates `ok`
assertion to always use `push`.

Fixes #668
Closes #669
Tests: Cleanup module test, removing duplicated non-atomic tests

Extended other tests to keep the same test coverage.

Fixes #477
Build: Specify valid components for commit messages

Closes #682
Build: Enable PR testing with browserstack-runner
Build: Test
Build: Test
[fix]: node_modules/.bin already included in PATH for npm scripts
[fix]: Update version, see if any of the bug fixes help