Delete parent page, child pages cannot be found anymore

[dont merge]  This PR fixes a bug by making sure that CMSSiteTreeFilters passes the correct method for
counting the number of children into SiteTree::CMSTreeClasses() so the correct CSS / JS
classes is set so the they can be opened in the UI.

PR for CMS https://github.com/silverstripe/silverstripe-cms/pull/1056
Issue:  https://github.com/silverstripe/silverstripe-cms/issues/1049
This one is gnarly, when it tries to find a deleted page, it flushes the DataObject cache and the that chains to hierarchy flush as well. This throws away all work done previously in markPartialTree