add Git::Raw::Tree::Entry::file_mode()

This is a feature request, not a bug report. As far as I can tell, we cannot distinguish between symlinks and regular files currently, and we should be able to.

I've used "file_mode" and integer (rather than octal string) representation in order to be consistent with existing code, but I'd prefer to use "filemode" to be consistent with libgit2 symbol names (I'm neutral on whether strings like "100644" would be better return values).

I think high-level ->is_symlink, ->is_executable functions would be nice, too. Let me know if you agree and I'll add them.