New C# Design Pattern Manual