refactor SubmitHistory

- replace es_query and es_response with a simple @memoized
- make es_results way less terse
- change return type of pull_users_and_groups to accept accessing fields as attributes
- change return type of _report_user_dict similarly