Added support for reading CSV header from separate file

and support for having multiple files look like one CharSeeker. There's
also a clearer separation of concerns between, Readable and CharSeeker and
where they are instantiated.