Fix for query cache with large queries

When using the QueryCache in combination with larger collections, a query calling `get_more` to fetch all documents from the database, would only cache the first results, not the complete query result. Upon the next time the same query is done, the QueryCache would return an incomplete set of documents as results for the query.

I added a spec to describe the behaviour: it is failing for the current master. Adding the `get_more` results to the QueryCache fixes the issue.