Add unit testing support with pytest
This change enables viewing unit test results in Gitlab, rather than only the summary pass/fail for the whole CI test. Test cases must be created here and the gitlab-ci file in each repo needs to be configured to support this.