Fix a memory leak in `git_pathspec__vinit`.
Fix a memory leak in `git_config_iterator_glob_new`.
Fix a memory leak in `config_parse`.
Fix a memory leak in `hash_and_save` and `inject_object`.
Fix a double free issue in `git_blame__alloc`.

`git_blame_free` already calls `git__free` on `gbr`.
Incorporate @ethomson's suggestions.
Refactor zlib for easier deflate streaming
Packbuilder stream deflate instead of one-shot
Packbuilder contains its own zstream
Incorporate @arrbee's suggestions.
Merge pull request #2004 from ethomson/pack_stream

Stream packs to the destination
Merge pull request #2043 from arthurschreiber/arthur/fix-memory-leaks

Fix a bunch of memory leaks.
Add `git_remote_dup`.
Merge pull request #2045 from arthurschreiber/arthur/add-git_remote_dup

Add `git_remote_dup`.
Don't duplicate state that's only used when fetching.
We don't need memset here.
Align git_signature_dup.

This changes git_signature_dup to actually honor oom conditions raised by
the call to git__strdup. It also aligns it with the error code return
pattern used everywhere else.
Align git_tree_entry_dup.
Merge pull request #2048 from arthurschreiber/arthur/add-git_remote_dup

Implement @cmn's suggestions for `git_remote_dup`.
Merge pull request #2047 from arthurschreiber/arthur/fix-dup-functions

Align `*_dup` functions