オプション群を大幅拡張

この前見てもらったのとロジックはそんなに変わってないす。
example と docs 書いてみました。