Code Monitors: save result payload in db
Created by: camdencheek
This modifies code monitor query runs to save the set of results it receives from the API in the database.
Why do that? Because repo-aware code monitors will be very difficult to re-run exactly until we have a better intermediate representation for our search queries, so being able to show the results in the UI (or in slack messages or emails) means we need to save the results when we get them. Additionally, this makes it much easier to audit and debug. This could also allow us to view the results in the "code monitor status" page.
Because code monitor runs are only saved in the db for one day, there is a bound on the size of additional information being stored in the db, so I'm not too concerned about storage bloat.