raname package to diff_test

Doing this does not provide much of a benefit other than
exlicitly testing API usage. Also, this changes makes it more obvious
to call diff.Runes and diff.Ints in their respective tests
(as opposed to Diff itself on &ints{} and &runes{}.

I did have to pull the type ints struct from the diff.go file for the
BenchmarkDiff call itself, though.
add diff.Strings
added TestDiffStrings

This is basically a duplicate of TestDiffRunes:
because the rune slice was all ascii, rune indices
line up with string indices
add BenchmarkDiffBytes and BenchmarkDiffStrings

benchmarks show diff.Bytes and diff.Strings almost equal
in timings (as expected
add GranularDiff{,Strings} functions
added test for GranularStrings

This also tests GranularDiffs itself.
Also added a helper function to compare two diff slices.
add other new functions
fix ExampleInterface and add GranularStrings example

Also renamed ExampleInterface to Example_Diff for godoc purposes
take out underscores for godoc
move map inside of example for godoc clarification
merges minor changes with the pull request.
see https://github.com/mb0/diff/pull/2
merges pull request by twmb/diff@c86783d24e76297f7a20a548c4e7ec4e9e93f9fb with minor changes