Rewrite processing component to avoid using global file locks, which don't work consistently on Windows. Instead stream results in batches and write as finished