1 Possible upgrades to gzfilebuf:
3 - The ability to do putback (e.g. putbackfail)
5 - The ability to seek (zlib supports this, but could be slow/tricky)
7 - Simultaneous read/write access (does it make sense?)
9 - Support for ios_base::ate open mode
13 - Check public interface to see which calls give problems
14 (due to dependence on library internals)
16 - Override operator<<(ostream&, gzfilebuf*) to allow direct copying
17 of stream buffer to stream ( i.e. os << is.rdbuf(); )