C# library for error handling in functional style (inspired by Scala and Haskell) - Maybe & Try monads