improve rummage support for long-running queries

(try 2)

We ran into an issue where certain queries would return nothing despite us knowing for certain that there should be results returned. Eventually I tracked it down to the fact that SimpleDB may return partial or empty result sets w/ a NextToken (instead of a time-out error) when queries exceed 5 seconds. Then I noticed that rummage currently returns nil when the result set is empty, which prevents callers from fetching the NextToken and continuing the query. So I made the following changes.

Please let me know if I overlooked anything here!