Updated the WebWorldWind npm project's build dependencies to ensure compatibility with the latest version of Node.js, Grunt, Karma, and Jasmine.
While changes like this are always worthwhile, I'm making it now to ensure that the original WebWorldWind source and its accompanying npm project will continue to operate for as long as possible after the [WorldWind project's suspension on April 5, 2019](https://worldwind.arc.nasa.gov/news/2019-03-08-suspension-notice). Secondary goals are eliminating all npm audit warnings from old versions of libraries used to build WebWorldWind (i.e. the devDependencies) and ensuring that unit tests continue to operate.
Summary of changes:
- WebWorldWind now builds with Node.js 10.15.3 LTS and 11.12.0. The README file and the Travis CI configuration file reflect that.
- All npm devDependencies, used for building the WorldWind project, are updated to the latest version available as of this pull request.
- All npm security audit vulnerabilities are addressed.
- Subtle errors in unit tests fixed. WorldWind's geometric unit tests erroneously modified global variables, such as Location.ZERO. These values shouldn't be encoded as global variables, but solving that is out of scope here. Previous versions of Jasmine concealed this problem but these unit tests fail with Jasmine 3.x, likely due to a change in the Jasmine interpreter lifecycle between tests.
* Unit tests for map projection arithmetic
- Unit tests for Globe's ellipsoidal properties and methods against official WGS84 reference values
- In-progress unit tests for ProjectionWGS84's geographic-to-cartesian arithmetic
* Unit tests for map projection arithmetic
- Unit tests for Globe's ellipsoidal properties and methods
- Unit tests for ProjectionWGS84's geographic-to-Cartesian transformations
- Employed official WGS84 reference values for all unit tests
* Unit tests for map projection arithmetic
- Unit tests for Globe's ellipsoidal properties and methods
- Unit tests for ProjectionWGS84's geographic-to-Cartesian transformations
- Employed official WGS84 reference values for all unit tests
* Enhanced geographic to Cartesian arithmetic precision
* Disabled unit tests validating incorrect results
- Several unit tests validated functions based on earlier output from the function itself.
- These functions computed incorrect results, and once repaired the erroneous unit tests failed.
- I've opted to disable these unit tests until an independent validation method can be established.
- In the meantime, I have added unit tests for the problematic low-level functions that are validated against independent results.
* Simplified WorldWind module import for new unit tests
* Clarified property docs for Globe.polarRadius and eccentricitySquared
* Work in progress
* Further controller refactoring
* Bug fixes
* Added docs and removed test code
* Removed commented out code
* Revert WebStorm config changes
* Formatting tweaks
* Doc fixes
* Navigator state phase 1
* unProject refactor and unit tests
* Fix for incorrect matrix
* Moved convertToViewport
* Moved further NavigatorState methods, added unit tests
* Remove experimental change
* Various property migrations
* Final property moves
* Bug fixes
* Unit test update
* Unit test corrections
* Unit test cleanup
* Unit test fixes
* Unit test fixes
* Formatting fixes
* Documentation tweaks
* Move calls that require access to wwd.drawContext
* Remove wwd.drawContext dependencies
* Remove drawContext dependencies
* Fixes for classes saving direct references to drawcontext properties.
* Formatting fixes
* WIP
* Fix for 2D panning issue
* Removed commented out code