**Summary:**
Started adding more functions to eventually add solve capability via the response method. Exposed parameters for setting the buffer distance when cropping tide model data (thanks robbibt!). Fixed the TMD3 netCDF4 variables for currents (thanks VikNikolaus!). Improved the CI builds by having test files versus a side-by-side comparison against the matlab version, which allowed the addition of windows builds. Added some improvements to the documentation, including the use of `bibtex` for citations.
**Itemized Changes:**
* `feat`: add spherical harmonic functions (362)
* `refactor`: move generic `astro` functions to `math.py` (362)
* `feat`: add function to calculate altitude, azimuth and D (362)
* `test`: add test for unnormalized legendre polynomials (362)
* `test`: moved `normalize_angle` test to `test_math.py` (362)
* `test`: add ECEF to altaz test at USNO (362)
* `feat`: add calculation of zenith angle (363)
* `test`: add zenith angle test (363)
* `feat`: expose buffer distance to crop tide model data for 367 (368)
* `test`: add constituent parameter test (368)
* `ci`: add windows build for 98 (369)
* `fix`: omega and phase in constituent parameters (369)
* `refactor`: move body tide Love/Shida numbers to `arguments` (369)
* `test`: create test files from matlab program for comparison (369)
* `fix`: add `missing_ok` to deletions in tests (369)
* `fix`: verify that file objects are closed in `test_spatial` (369)
* `fix`: latest TMD3 current variable names for 370 (371)
* `feat`: add tidal aliasing period calculation function (371)
* `fix`: add latitude and longitude as potential dimension names (371)
* `docs`: use `sphinxcontrib-bibtex` to build bibliography (372)
* `refactor`: moved check points function to `compute` (372)
* `docs`: unify all references to a single page (372)
* `docs`: rearrange toctrees
**Full Changelog**: https://github.com/tsutterley/pyTMD/compare/2.1.8...2.1.9