Tweak packaging, lint codebase
In terms of packaging, reorganize metadata across setup.cfg
and pyproject.toml
. I've also added a dev
extra so install various dev tools for linting, formatting, etc.
Also ran black across the codebase and reorganized imports, etc.
Finally changed some of the type annotations in the various dataclasses and initialize certain variables with fields to remove some warnings/errors that show up with my static code analyzer.