This is the diff of required changes to update the linux CI to GCC7. Note that the actual update needs to be done rather manually.
The main change is that the gcc7 docker image is built on top of a base-image, which makes it faster to add different compilers if wanted (I have not done so at the moment, as we test clang on macOs and that seems enough).
I've pre-emptively added libfmt to the docker image (and vim because it's annoying to not have a text editor when testing things out).