Call initInflate and initDeflate exactly once

Per the discussion in [issue 3](https://github.com/k0001/pipes-zlib/issues/3), I've used `draw` from `Pipes.Parse` to detect end-of-input: we now correctly initialize, repeatedly feed in bytes, and then finish.  I'm happy to report that gzip decompression now works just fine for me.

Instead of a `Pipe` we now have a `Producer -> Producer` - is this unavoidable?