.NET / WPF Functional C# Application Composition, Part 1: Shortcomings of Single-Responsibility Objects Composing C# applications with single-responsibility objects generates a lot of boilerplate.