Deduplicate pyproject.toml. Removed the [project] section because it was essentially useless since poetry doesn't support it and completely switched to [tool.poetry] as the canonical source of metadata
Drop flake8, ruff can do the same thing so I switched to that
Use poetry in the workflows
Remove upper constraint from non-dev dependencies as this was causing issues with any library that would try installing it without having the same upper constraint
[project]
section because it was essentially useless since poetry doesn't support it and completely switched to[tool.poetry]
as the canonical source of metadata