Batch inserts

Basic strategy is to batch consecutive inserts together per namespace. Batch gets saved whenever:
- An update or delete is done to the same namespace as the insert
- After streaming (up to) 1000 updates from oplog, time from last batch update is larger than 5 seconds.
- More than a threshold of updates have happened in this namespace.
- Program is exiting/streaming stops.