/*
 * call-seq:
 *    initialize(io)
 *
 * Creates a new stream for reading a bzip file or string
 *
 * @param [File, string, #read] io the source for input data. If the source is
 *    a file or something responding to #read, then data will be read via #read,
 *    otherwise if the input is a string it will be taken as the literal data
 *    to decompress
 */
static VALUE bz_reader_init(int argc, VALUE *argv, VALUE obj) {