a monadic parser combinator library using LINQ