Rewrite CI for VM executor
Previous draft of the new GitLab CI was based on the assumption that we were using a normal Docker executor where you can spin up other services and choose a base image as needed.
Turns out we're using a VM executor on KubeVirt, we need to spin up services ourselves. Thankfully we appear to have rootless docker set up for us as part of the Golden VM setup script:
So it's just a case of using Docker for services, and manually installing bare-metal Python and Node for the core checks.