Maybe monad in C#. Port of the Ruby andand gem