Raise a ValueError for invalid shas

When hex_to_sha is passed an invalid sha, raise a ValueError instead of a
TypeError. This exception is more appropriate since the sha is still a string.
Catch ValueError in BaseRepo.__getitem__ when querying object store

This allows us to fall back on querying the refs when looking up 40-character
refs.

Fixes: #82
Fix tests after adding support for 40 character refs.
Update NEWS.
Fix error in fetching with side-band-64k disabled

Signed-off-by: Jelmer Vernooij <jelmer@samba.org>
Update NEWS, add test for fetch pack with side-band-64k disabled.