As I was reading the `TODO: better name` on `DiffWriteable`, I thought to myself - is there a good reason to separate the interfaces? Unifying them would fix the naming issue, and make the simple use of the API simpler. On the other hand, there's something I don't like about a "diffable" interface concerning `io.Writer`.