Fix Git_unix.IO.write_file for empty files
Fix CHANGES
Merge pull request #34 from samoht/master

Fix Git_unix.IO.write_file for empty files
modified to mimic git-cat-file and git-ls-tree of the original Git
large packs are not cached
fix: Tree.perm_of_string
full SHA1 is required to specify an object
prepare for abbreviated SHA1
experimental support of abbreviated SHA1
fix: SHA.of_hex
fix: SHA.sha_compare and Pack_index.c#scan_sub
modified to retrieve loose objects through abbreviated SHA1
exception handling in cat-file and ls-tree