Squashed 'deps/libgit2/' changes from 8f759ac..fa44a16

fa44a16 Merge pull request #2521 from jacquesg/remote-ls-not-connected
dc8adda git_remote_ls() should return an error if the transport is not available
e1c4429 Merge pull request #2497 from ethomson/kerberos3
23135af Introduce proper http authentication API
315cb38 Add GSSAPI support for SPNEGO/Kerberos auth over HTTP
e003f83 Introduce git_buf_decode_base64
4086726 Perform HTTP keep-alive
adcdeb3 online::clone::credentials support default credentials
f96e7e6 Free references during push validation
0f29e96 Remove the refs/notes/commits that we push in test
aea6763 Don't run the ssh clone tests against http remotes
fb48a51 Merge pull request #2469 from ethomson/transport2
c180c06 Custom transport: minor cleanups
49d5ec7 Merge pull request #2517 from ethomson/no_win_unreadable
c840233 Don't include the unreadable tests on win32
0707fee Merge pull request #2513 from ethomson/giterr_null_msg
e62f96d Allow NULL error message prefix when class=GITERR_OS
59403f1 Merge pull request #2509 from libgit2/cmn/immediate-multiline
9dac1f9 config: a multiline var can start immediately
bb9e602 Merge pull request #2507 from libgit2/rb/timer-typo
35f186b Merge pull request #2506 from libgit2/rb/ignore-pipes-etc
f18234f Don't report status on named pipes
3822d2c Fix typo in timer normalization constants

git-subtree-dir: deps/libgit2
git-subtree-split: fa44a1699ccd70725b236868ef4be5cac8c36267
Merge commit 'd99d30e4ed1c97b10a2e8dcda8d2c92c5c109135' into jacquesg/update-libgit2
Remote.xs: Added default_branch()
Changes: update