use the proper variable ($self instead of $_)
add some boolean methods about the directory entry

The methods are:
- is_tree
- is_blob
- is_executable
- is_link
- is_submodule

It might be an issue that is_blob is true for everything but a tree.
remove a useless check

if $line is empty, we have already exited the while loop
improve coverage of Git::Database::Object::Commit
remove a useless check

if $line is empty, we have already exited the while loop
improve coverage of Git::Database::Object::Tree