Collection of various Monad implementations in C#