Introduce git_diff_blob_to_buffer
Share git_diff_blobs/git_diff_blob_to_buffer code

This moves the implementation of these two APIs into common code
that will be shared between the two.  Also, this adds tests for
the `git_diff_blob_to_buffer` API.  Lastly, this adds some extra
`const` to a few places that can use it.
Merge pull request #1204 from arrbee/diff-blob-to-buffer

Have diff blob to buffer share code (and add tests)
keep comments at < 80 chars
Merge pull request #1207 from ethomson/cmake_comment_len_sanity

keep comments at < 80 chars
remove ppc sha1 asm
Merge pull request #1208 from ethomson/ppc_sha1_asm_deadness

remove ppc sha1 asm
update copyrights
Merge pull request #1209 from ethomson/update_copyright

update copyrights
Resolve crash with diff against empty file

It is not legal inside our `p_mmap` function to mmap a zero length
file.  This adds a test that exercises that case inside diff and
fixes the code path where we would try to do that.

The fix turns out not to be a lot of code since our default file
content is already initialized to "" which works in this case.

Fixes #1210
Merge pull request #1212 from arrbee/fix-diff-empty-file

Resolve crash with diff against empty file
Relax refspecs accepted by push
tests-clar/network: remove unused CREATE_BLOB
push: properly handle tags

Currently, push doesn't really handle tags when queueing objects. Fix
it.
Merge pull request #1214 from schu/push-handle-tags

push: properly handle tags
Add a failing test for autocrlf filters
Expose stock user/pass credential utility
Move credential helpers to their own (optional) header
Added missing curly brackets and fixed compiler warnings.
Disable SSL when compiling for AmigaOS for now.