Only replace \r if it's followed by \n when creating a diff.
Add some Diff tests.

Diff only adds context to the beginning of each change, not the end.
It also doesn't insert a divider between different diffs.
Print the diff out in the tests.
Add some more diff tests.
Add context to the beginning and the end of the diff.
Merge pull request #355 from erbridge/diff_test

Make a util.Diff add context before and after the diff