I have edited the issue description to reflect what we came up with after many iterations and what the PRs actually contain.