Add Rugged::Walker#each_oid with :limit and :offset options

This also updates `Rugged::Walker#each` to support the `:limit` and `:offset` options. This allows you to paginate into the commit history in a more efficient way. Previously you'd have to deal with all of this up in Ruby and call back and forth between C<->Ruby on each iteration.

By pushing this down into C we can skip `:offset` entries in history much more quickly before starting to build and yield entries to Ruby.