tree: validate filename and OID length when parsing object
tree: validate filename and OID length when parsing object

When parsing tree entries from raw object data, we do not verify
that the tree entry actually has a filename as well as a valid
object ID. Fix this by asserting that the filename length is
non-zero as well as asserting that there are at least
`GIT_OID_RAWSZ` bytes left when parsing the OID.

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