Convert Position into a value class

`config.file` will never be None here. I'd suggest changing its type to `Option[InputStream]`, the "empt-name file" was an awful hack to begin with.