Add transparent input decompression

This supports gzip and bzip2 by magic number determination. The alternative approach of using file extension is also possible, but I think this is less brittle.

Trailing whitespace differences in documentation due to opinionated editor.

This change is a lead in to integration tests and benchmarks; it prevents needing write access to read the testing corpus.