could these be const? ie `read_xxx(const std::ifstream& infile)`