getters for children, numChilds() for all except...

Rule, which is special. Thankfully, since Rule is higher up in the chain
it's not hard to treat it differently during the traversal...