Result.Maybeの削除 refs #8

Haskellのeither関数はLangExtのMatchと同じなので、とりあえず削除
Func<T, Unit>を取るIterの追加 refs #8
Result.FromFuncをFunc.ExnToResultで書き直し refs #8
Result.Equals内でOptionのEqualsを直接呼び出すように変更 refs #8

nullを警戒していたっぽいけど、Optionはそもそもstructなので、
直接呼び出しても問題はない。
Resultのテストを追加 refs #8