added a depth option to control fetching of grandchildren