Patch Set 2: I would prefer that you didn't submit this; No score

This is only a first pass review.  I found enough things that I gave up and didn't go through the detailed logic of the compare, because I suspect it will need to change if you take my suggestions and look at adding a WorkingTreeIterator into the process.