Search backend: split aggregator into resultCountingStream and statsObservingStream
Created by: camdencheek
Now that the aggregator's functionality is more limited, we can split its use into two more general-purpose stream types and remove the aggregator itself. This also moves the streams into the streaming package, where all the other stream types are defined.
I think it's worth having these single-purpose streams because they will likely be useful elsewhere in our jobs in addition to replacing the Aggregator type. They're a little granular, but I think that's okay.