add support for multiple pages of results for very large queries

First, thanks for re-releasing this gem under new management.  I love how easy this is to use now.  Automatically polling the batch status is just awesome.

for bulk_api queries with a very large number of results (maybe...more than 2 million?) , Salesforce may return an array of result_ids, instead of a single result_id.  This will handle both cases.  If there are multiple result_ids, we will iterate through them and query the results for each.  Then we'll concatenate them into a single flattened array of results.
Please use expect syntax