/*
* call-seq:
* initialize(io = nil)
*
* @param [File] io the file which to write compressed data to
*
* Creates a new Bzip2::Writer for compressing a stream of data. An optional
* io object (something responding to +write+) can be supplied which data
* will be written to.
*
* If nothing is given, the Bzip2::Writer#flush method can be called to retrieve
* the compressed stream so far.
*
* writer = Bzip2::Writer.new File.open('files.bz2')
* writer << 'a'
* writer << 'b'
* writer.close
*
* writer = Bzip2::Writer.new
* writer << 'abcde'
* writer.flush # => 'abcde' compressed
*/
static VALUE bz_writer_init(int argc, VALUE *argv, VALUE obj) {