Hey,
Love where this project is going, thanks for publishing
It would be great to use Libcloud as an abstraction layer so you can more easily integrate additional cloud providers. The DNS component looks like: https://libcloud.readthedocs.io/en/latest/dns/index.html
I have used it previously for similar purposes to some success, but my code isn't suited to a PR else I would of course do my contribution sooner
Best regards