This MR updates the test suite syntax to require pytest >=3.9.3 (for the tmp_path fixture).
>=3.9.3
tmp_path
Add docstrings to all tests.
Address as much lint/technical debt as I could find.