children methods now return cached results when tree has been built