Encapsulating data in C#