Added new field sha1 to compare with a commit's parents.

Not the smoothest thing below, because since we are comparing old files it may no longer exist in the HEAD, so SHA1 overrides several error checks.  May revisit later.