Recently we upgraded to Gulp 4. However, the following things still need to be addressed in some way:

- If a task series is executed with an anonymous function inside it, we'll see `Starting '<anonymous>'` in the output, which isn't that great. We need to either suppress it or use named functions.
- If a task is private, it should be hidden in some way. For example, `gh-pages-prepare` is only used in the public `web` target and should not be used on its own, however currently it shows in the default `gulp` output since it's a regular task. Perhaps we should mark them with an underscore?
"typestest",
  gulp.series("typestest-pre", function (done) {
    exec('"node_modules/.bin/tsc" -p test/types', function (err, stdout) {
      if (err) {
        console.log(`Couldn't compile TypeScript test: ${stdout}`);
      }
      done(err);
    });
  })
);
gulp.task("baseline", function (done) {
  console.log();
  console.log("### Creating baseline environment");
  const baselineCommit = process.env.BASELINE;
  if (!baselineCommit) {
    done(new Error("Missing baseline commit. Specify the BASELINE variable."));
    return;
  }
  let initializeCommand = "git fetch origin";
  if (!checkDir(BASELINE_DIR)) {
    mkdirp.sync(BASELINE_DIR);
    initializeCommand = "git clone ../../ .";
  }
  const workingDirectory = path.resolve(process.cwd(), BASELINE_DIR);
  exec(initializeCommand, { cwd: workingDirectory }, function (error) {
    if (error) {
      done(new Error("Baseline clone/fetch failed."));
      return;
    }
    exec(