Added autopagination helper with callback support

This standardizes the `get_all` method to return a HashRef as well (instead of an ArrayRef) to standardize the method interfaces, and adds support for automatic pagination of records.  By passing in a callback subroutine, the method modifier is able to automatically fetch all of the records and process them as they become available, and reduce the need for chaining `get_all` manually to the `get_disputes` method:

```perl
# Old way (still works)
print ~~@{$bp->get_all($bp->get_disputes({limit => 100, 'created_at[>]' => '2014-05-01T00:00:00'})};

# New way, more flexible because it can display progress to the client and process records when they become available
$bp->get_disputes({limit => 100, 'created_at[>]' => '2014-05-01T00:00:00'},
    page_callback => sub { my ($items) = @_; print ~~@$items }
);
```
What do you think about passing the whole `$data` to the callback:
```perl
$page_callback->( $data ) if $page_callback;
```
Just to be more flexible. Maybe a client would want to show progress by showing the current link thing it is processing.