Add diffing support

Help appears a bit more often from the CLI
Abstracted out some shared behaviors between commands
Merge pull request #4 from tivac/diff

Diffing