Well, we have an abstraction for file reading