Parse files with non-utf8 encoding; use more generic interface

* Introduce iconv-go library to enable reading of non-UTF-8 encoded
  XML files
* Use io.ReadSeeker instead of a filename so that reading is more
  generic