core::init tests: reverse init/shutdown
core::init tests: reverse init/shutdown

We want a predictable number of initializations in our multithreaded
init test, but we also want to make sure that we have _actually_
initialized `git_libgit2_init` before calling `git_thread_create` (since
it now has a sanity check that `git_libgit2_init` has been called).

Since `git_thread_create` is internal-only, keep this sanity check.
Flip the invocation so that we `git_libgit2_init` before our thread
tests and `git_libgit2_shutdown` again after.

stewid/libgit2,stewid/libgit2,stewid/libgit2,stewid/libgit2,stewid/libgit2,stewid/libgit2