Eventually I would like to, but I think I'm going to need to think harder about what a public driver API should be before going down that route. In particular, I want a public driver API to allow a user to implement support for `diff.<driver>.command` (i.e. external diff) and that can't be done with the current design.

I lean towards leaving this internal for the time being with a separate PR to polish it up for public consumption.