Make `git_credtype_t` a bitfield

This gives `git_credtype_t` correct values for or-ing.

Right now client code would get `GIT_CREDTYPE_SSH_PUBLICKEY` (3) for `GIT_CREDTYPE_USERPASS_PLAINTEXT`|`GIT_CREDTYPE_SSH_KEYFILE_PASSPHRASE` (1|2), which would throw them into trying to understand how `git_cred_ssh_publickey_new` is to be used ;-).

Fixes #1852.