Instead of the good_file nonsense, we should have exceptions that distinguish between a left file error and a right file error.