Aggs: Change nested agg to execute in doc id order

By executing in docid order the child level filters don't require random access bitset any more and can use normal docid set iterators. Also the child filters don't need the bitset cache anymore and can rely on the normal filter cache.

Note: PR is against 1.x branch
I think 

```java
if (prevParentDoc == -1) {
  childDocId = childDocs.nextDoc();
} else {
  if (childDocs.docID() > prevParentDoc) {
    childDocId = childDocs.docID();
  } else {
    childDocId = childDocs.advance(prevParentDoc);
  }
}
```

could just be replaced with

```java
if (childDocs.docID() > prevParentDoc) {
  childDocId = childDocs.docID();
} else {
  childDocId = childDocs.advance(prevParentDoc + 1);
}
```
?

(No more check that the previous parent doc is -1, and advance to `prevParentDoc+1` instead of `prevParentDoc`)