Add address and thread sanitizer scheduled CI job
It would be useful to run the test suite under asan and tsan, in a CI job.
They’re expensive to run and won’t find problems that often, so it should be a weekly scheduled job (like the valgrind one is) rather than running on every commit.
The job needs to fail on errors, otherwise we won’t catch regressions. That means that either we need to fix all the remaining asan and tsan warnings in GLib first, or find some way of marking them as to be ignored. If we mark them as ignored, the CI job will at least prevent future regressions, and we can go through and fix the ignored errors in a second pass.
See also #1672.