Consolidates sane flake8 settings to pyproject with the Flake8-pyproject plugin.
Does not change logic of test workflow but allows base settings to live in pyproject for anyone using flake8 as an external linter (e.g. vscode)
Also fixes some flake8 errors that were not being picked up by current testing, mostly unused imports.
Cleans up test args on new tests.
Add log path to default config test so as not to mangle default log outside of tests.
Match setup functions to archive/clone.
Remove testing marker that was commited in error.
Consolidates configs to pyproject.toml and updates workflows accordingly as well as sets sane minimums for dev requirements.
adds version check to main script.