option周りを強化。読めるものが増えてきたので、モジュールも分けて、テストも書いた。