This is basically the same as the previous patches. Per review comments by Brian, I've moved the git-fu shell code to bin/extract_git_sha1. Unless there are objections, I'd like to push this (with the various Reviewed-by and Acked-by lines added) sooner rather than later. We can improve the git-fu later, if we so desire.