Disable ignore_case when writing the index to a tree
Rename function to __ prefix
indexer: kill git_indexer

This was the first implementation and its goal was simply to have
something that worked. It is slow and now it's just taking up
space. Remove it and switch the one known usage to use the streaming
indexer.
Merge pull request #1387 from carlosmn/kill-indexer

indexer: kill git_indexer
indexer: use a hashtable for keeping track of offsets

These offsets are needed for REF_DELTA objects, which encode which
object they use as a base, but not where it lies in the packfile, so
we need a list.

These objects are mostly from older packfiles, before OFS_DELTA was
widely spread. The time spent in indexing these packfiles is greatly
reduced, though remains above what git is able to do.
Merge pull request #1388 from carlosmn/hash-ref-delta

indexer: use a hashtable for keeping track of offsets
Fix a few leaks

`git_diff_get_patch()` would unconditionally load the patch object and
then simply leak it if the user hadn't requested it. Short-circuit
loading the object if the user doesn't want it.

The rest of the plugs are simply calling the free functions of objects
allocated during the tests.
clear REUC on checkout
Merge pull request #1390 from ethomson/reuc_clear

clear REUC on checkout
Merge pull request #1380 from phkelley/index_icase

Disable ignore_case when writing the index to a tree