Interesting no attempt has been made to make it at least be less heavy on networked bytes. Especially since it is old and was meant to be used on a connection with no compression or encryption.
HasChildren could have been Parent, HasNoChildren could have been Leaf or Child. And so many more things.
HasChildren could have been Parent, HasNoChildren could have been Leaf or Child. And so many more things.