Tweaked file opening logic in run().

Previously, run() would open the file, seek the reading position, run autoconfigure() (which reads a line), close the file, open it again, and then seek the reading position again. This was unnecessary, since autoconfigure() works just as well if it reads the first line, and is quite dangerous, since autoconfigure() will fail if there is no line to read.

Also, the made the seek_position argument for _open_file() unnecessary.