'return a new query, limited to a single shard ID.
all subsequent operations with the returned query will
be against the single shard regardless of other state.'

def set_shard(self, shard_id):

    q = self._clone()
    q._shard_id = shard_id
    return q
