I have a tool that syncs my DNS records to CloudFlare using flat files that I keep under version control. I just extracted it from my personal tool set:
https://github.com/dnerdy/namesync
This flat file format seems to work well, and the tool could potentially be updated to support other DNS providers.