> ふむ。encode_header_B64はエンコーディングつきのencoded-word
> を返すメソッドだったんですね。ちょっと誤解してたみたいです。

us-asciiな token は encodeしない と {勘違い | 当時はそうだった}してた
為の仕様です。
そうだすると、日英混じり文をencodeすると、encodeと非encodeが
入り雑じるので、エンコーディングつきで変換しないと、メソッド作る
メリットが無かったのです。
まとめてencodeして それに ヘッダー名とか エンコーディング方式とかを
つけくわえるので良いのなら、pack('m")でよいのだし。
   1行目の折り返しがうまくいかないかも、、、だけど
   packじゃだめかぁ、ってあのころ書いた気がするので、ひっくり返して
   見るかな。

ですので、RFCの正しい理解しなおして、考えなおす必要があるかも。

で、
> とすると、iso-2022-jp以外のエンコーディングは指定できるのか
> どうかとか、Qエンコーディングできるメソッドは用意するのかと
> か疑問は残ります。

取りあえずのバージョンでは、未対応としておいておいて、
必要に応じて、同じメソッドで対応出来るように上位互換できるだろう
とおもいます。
省略可能パラメータを必要に応じて増やして行けばよいのだし。

とすると、 
   文字コード、エンコード方式  を名前に取りこまない方がよく
   エンコーディングを着けて返すと言うことを示す名前がよい
   あ、、
   Headerだけではなく、Multipartの記述でも同じ様式だな、、、、

となると、やはり mime_{en|de}codeかな。

  mime_encode(pre="",len=76,sep="\n ",charset="iso-2022-jp",encoding="B")


ところで、「us-asciiのみのtokenはencodeしない」という私の
勘違い?仕様は、To: しん <dezawa / aliadne.net> をそのまま
喰わせてもよいのですね。

  "To: しん <dezawa / aliadne.net>".mime_encode
か
  "しん".mime_encode(pre="To: ")+" <dezawa / aliadne.net>"
か。

日英が入り雑じると変換結果が長くなりますが、そのままのこしてしまいましょうか。