Understanding Partial Classes in C#