encoder: avoid returning ErrorKind::Interrupted
encoder: avoid returning ErrorKind::Interrupted

While `Interrupted` is theoretically a valid thing to return here, many
consumers deal poorly with it. It's much easier both for us and for consumers
to just loop until the internal buffer has been completely written out.

Other encoders like `bzip2-rs` and `flate2-rs` do the same thing.

Gyscos/zstd-rs,Gyscos/zstd-rs