/*
 * call-seq:
 *    foreach(filename, &block)
 *
 * Reads a bz2 compressed file and yields each line to the block
 *
 *    Bzip2::Writer.open('file'){ |f| f << "a\n" << "b\n" << "c\n\nd" }
 *    Bzip2::Reader.foreach('file'){ |l| p l }
 *
 *    # Output:
 *    # "a\n"
 *    # "b\n"
 *    # "c\n"
 *    # "\n"
 *    # "d"
 *
 * @param [String] filename the path to the file to open
 * @yieldparam [String] each line of the file
 */
static VALUE bz_reader_s_foreach(int argc, VALUE *argv, VALUE obj) {