Renamed "T" to "TreeNode" to be more descriptive.  (The struct names in C# don't need to match the C names, they only need to match the field structure.)