Client.getMetadataWithChildrenIfChanged: Make this work.  It never did!

Also add a basic test for it.