Revision control support

This allows the `cdiff` command to be used in place of `git diff`, `svn diff`, and `hg diff`.