Fix non-unique report_ids

This PR is for tracking implementation of the first phase of #160. The following scrapers need their derivation of report_id fixed.

- [x] agriculture
- [x] amtrak
- [x] commerce
- [x] dhs
- [x] education
- [x] eeoc
- [x] exim
- [x] hhs
- [x] hud
- [x] itc
- [x] neh
- [x] nsf
- [x] pbgc
- [x] sba
- [x] sec
- [x] state
- [x] treasury
- [x] lsc
- [x] nasa
- [x] nrc
- [x] fdic
- [x] usaid

For testing, you can run a scraper with `--archive --dry_run --quick`, and then running [unique_report_ids.py](https://raw.githubusercontent.com/divergentdave/inspectors-general/scripts/unique_report_ids.py).

Note that the above script will catch any duplicate report_ids on disk, assuming they are in different years. However, if there's a scraper that uses the same report_id twice in the same year, the second report will clobber the first one. We'll need something like 0a2d33af192a41cd229c5caa2cf59aad67b34634 from #151 to catch those cases at runtime.
What does the code style say about comments that it doesn't say about conditionals? Confused as to why L152 is massively long but you chose to put "Machine" on a subsequent line here.