Early draft

I'm not suggesting that we merge any of this but a PR makes it easier to discuss.
This should be "Ensures".