This part was ugly because it was nice to see results for each app as they happened. But since we'll now have a "live" reporter, we can modify this to store the content and then build the JSON format after the loop.