checkout output records against expected for each leaf directory

You can use `recordsByDirectory` to check a whole tree of output against a tree of expected output. eg:

    path(cascade.dateView) ==> recordsByDirectory(
        actualReader, 
        expectedReader, 
        expectedRoot </> "by-date"))

If this seems okay, I'll add to the docs. 
Please add scaladoc. We are now commenting as we go.