Tree structure vs composition - C#