make history almost unlimited
RootIndex rewrite

introduce RootInfo
use the whole RootInfo hierarchy to determine each part of the DirectoryInfo
this accounts for both versions of DirectoryIndex returning equal infos for all tests
share the same directory info in DirectoryIndex and RootIndex to reduce consistency check overhead