Add a minimum blob size on the rolling checksum

For each blob, we record its mode, type, hash and offset, which use at least
57 bytes. The rolling checksum often generates blobs smaller than 57 bytes.
Not only those blobs end up using more space, but they also increase the
number of tree created to fanout the blobs. We also need to check if each
one is already present in the repository during the backup and we do more
disk seek during the restoration.

Of course, the minimum size also limit the minimum deduplication that can
be done, but, for size close to 57, the net result should be a gain in
speed and in space.

Signed-off-by: Patrick Rouleau <prouleau72@gmail.com>
Add functions to get and set values from git's config file

Signed-off-by: Patrick Rouleau <prouleau72@gmail.com>
Store the minimum blob size in git's config file to use the same value across backups

If we use a different size across backup, it will not corrupt the data, but
it will generate a lot of new blobs because the data would be splitted
differently, thus creating bigger backups than necessary.

With a real-life files collection, the repositories size goes like this:

		Min size = 0	  Min size = 56		Diff
First commit	187,117,254,339   187,117,254,339	15,538,839

Signed-off-by: Patrick Rouleau <prouleau72@gmail.com>
Add some tests for the git's config methods