Make SSH APIs present even without SSH support

The SSH APIs will just return an error code and state that the
library was built without SSH support if they are called in
that case.
Lots of SSH credential stuff can be left on

Much of the SSH credential creation API can be left enabled even
on platforms with no SSH support.  We really just have to give an
error when you attempt to open the SSH connection.
Indent with tabs
Make credential clearing consistent

This makes all of the credential objects use the same pattern to
clear the contents and call git__memzero when done.  Much of this
information is probably not sensitive, but it also seems better
to just clear consistently.
Add GIT_CAP_SSH if library was built with SSH

This also adds a test that actually calls git_libgit2_capabilities
and git_libgit2_version.
Merge pull request #1695 from arrbee/fix-1695

API should not be ifdeffed