Suggest putting some of this code in the driver. Casting to SshMachineLocation just feels wrong. We have a `BindDnsServerSshDriver.java` for that.

How about adding `update()` to the driver interface, and moving all of this code to there?
That will also get rid of the cast to `BindDnsServerSshDriver`.

This is a bit similar to NginxControllerImpl we call driver.update() - but NginxControllerImpl could probably also do with some work to not be doing `driver.getMachine()`...