Some stuff that could be improved with modern C++,
Instead of
static bool file_exists(const std::string &p) { struct stat st{}; return ::stat(p.c_str(), &st) == 0; }
std::filesystem::exists(path);
ty!