Implement fallback operation for driver.Diff()

This moves the Diff() operation to a separate Differ interface and
implements a fallback that uses the Changes() results to encode
a diff tar.
Merge pull request #19 from alexlarsson/dm-plugin-Diff-fallback

Implement fallback operation for driver.Diff()