AuTA 2.0 master merge
Description
Merges development to master, preparing the release of AuTA 2.0
This merge contains the following issues:
- #116 (closed) - Feature - Download reports
 - #119 (closed) - Enhancement - Fork Lizard and git clone into the workers
 - #126 (closed) - Documentation - incorrect API documentation
 - #152 (closed) - Bug - The security agent crashes on Windows
 - #155 (closed) - Bug - Difference in method names across tools
 - #158 (closed) - Feature - Template for adding AuTA to the GitLab CI
 - #169 (closed) - Feature - Aggregated checker
 - #170 (closed) - Feature - Export single submission
 - #171 (closed) - Feature - Export all submissions by a student
 - #172 (closed) - Feature - Export a full assignment
 - #173 (closed) - Feature - Export assignment configurations
 - #174 (closed) - Feature - Export core settings
 - #177 (closed) - Bug - No test coverage for the full project
 - #183 (closed) - Refactor - DatabaseConnection::getUser should return an Optional
 - #186 (closed) - Bug - Test Smells outputs entire path
 - #187 (closed) - Feature - Courses
 - #188 (closed) - Bug - Trampoline gets a 404
 - #190 (closed) - Bug - Pylint message ID
 - #192 (closed) - Refactor - Change the names of the databases
 - #193 (closed) - Feature - Basic assignment creation
 - #194 (closed) - Feature - Core logs in UI
 - #195 (closed) - Feature - Profanity checker
 - #197 (closed) - Feature - Suppressions
 - #198 (closed) - Feature - STREW metrics
 - #199 (closed) - Bug - MethodNames with arrays and generics
 - #201 (closed) - Bug - Report generator does not work anymore
 - #205 (closed) - Bug - Generic metrics not loaded in the UI
 - #206 (closed) - Bug - AuTA only searches the submission root for .auta.yml
 - #210 (closed) - Redesign - HTML report is ugly
 - #211 (closed) - Refactor - SIG - get 5 stars
 - #212 (closed) - Bug - Non-ASCII character in branch name causes worker to crash
 - #213 (closed) - Bug - CPM does not register approval or disapproval
 - #214 (closed) - Bug - CPM report generation does not aggregate warnings and failures properly
 
And a lot of other, miscellaneous bug fixes.
Changes
A lot, see the issue list for details.
Additions
Also a lot, see the issue list for details.
Test and Review
To be filled in by the reviewers
- 
All of the methods are commented to expectation  - 
The methods are tested to satisfaction  - 
There are no unnecessary files present in the MR  - 
The continuous integration has no problems with the MR  - 
The MR is filled in as requested (including labels, milestones, and reviewers)  - 
The documentation is up-to-date  - 
All nullable parameters are marked as such  
Edited  by Tim van der Horst