* [ ] Turn `write` from &self to self * [ ] Turn `read`/`write` into a typeclass of some kind.