opts: allow configuration of odb cache size

Currently, the odb cache has a fixed size of 128 slots as defined by
GIT_DEFAULT_CACHE_SIZE. Allow users to set the size of the cache via
git_libgit2_opts().

Fixes #1035.
Merge pull request #1436 from schu/opts-cache-size

opts: allow configuration of odb cache size