pub fn smart_reader(p: impl AsRef<Path>) -> Result<Box<dyn Read>>
Open a file from a path as a MultiGzDecoder or a BufReader depending on whether the file has the magic number for gzip (0x1f and 0x8b)