In an effort to improve our Apollo caching, use id fields more consistently in GraphQL.
- Add a few new id fields where we currently have a value that can be used, plus a couple others that seemed reasonable (please push back if I'm wrong)
- Use the GraphQL eslint plugin to enforce that id is used whenever it is available on a type
- Repair all lint errors by adding id as needed
- Remove a handful manual ids from AppCache
Ideally we would be able to use this anywhere that Apollo currently shows a cache warning.