Update .pre-commit-config.yaml to use the latest versions of black, flake8, etc.
- Remove trailing whitespace - Correct single newline at end of files (skip for json) - Update to formatting in a few places due to black
- Add exclude pattern for flake8 when running with pre-commit as it does not fully honor the exclude paths. - Cleanup exclude paths for flake8 in tox.ini - Re-enable line length check and correct three affected files