Added file reading, still must finish.