Update the package responsible for running tests, grunt-contrib-qunit.
The package change includes a significant bump to the puppeteer version used to run the tests (from v9 -> v19: https://github.com/gruntjs/grunt-contrib-qunit#release-history).
Running the tests with the newer puppeteer version leads to issues running the FullScreen test when run in the 'old'/current default headless mode (the test fails with a timeout).
Updating to the 'new' headless mode (eventually to be the default anyway), seems to allow the fullscreen request to succeed.
Thus, go ahead and extend the FullScreen test to verify the correct values for a successful request, as well as an additional step to exit fullscreen mode.
Update to most recent version of QUnit, which has been published under a new name for a while now.
Accordingly, replace the old package with the new one in both dependencies, as well as update references in test HTML files.
Make it easy to lint in stand-alone fashion.
Note that I'm going with a direct call to ESLint, as using `grunt eslint` leads to warnings about a circular dependency (per trace it seems to originate in istanbul?)
Adding [eslint-plugin-compat](https://github.com/amilajack/eslint-plugin-compat) to check for usage of incompatible APIs.
For a list of browsers, we start out using both the 'defaults' query along with IE 11, which is still expressly supported in OSD v4 (current).