Add CI job for linting python scripts with mypy and pylint
This is a smaller version of !172 (closed) The code logic is still there but the formatting checks are gone.
pylint and mypy are added to CI to catch errors in the code. A number of pylint errors have been fixed.