An Object should be about representing a libgit2 object rather than showing which methods it should support. Change any return of Object to *Object and provide methods to convert between this and the particular type.
Implement support for the following libgit2 functions: - 'git_tag_list' and 'git_tag_list_match' - 'git_tag_foreach' - 'git_tag_create_lightweight'