consider first revision to be null; cleanup
moved methods for comparing two revisions to ChangeFinder
moved code into methods for current file and whole project history