Surely there is a really simple distributed scheduler that is simple. Do I need to write one? Ie has dependencies, no database, flat files, single instance but trivial to fail over to a backup. I can even live without history or output.

What are you trying to do? Distributed scheduler with a single instance? No database? Are you sure you don't just mean "a scheduler" ala Luigi? https://github.com/spotify/luigi

And what kind of scheduler? Again, for "a single instance" it doesn't need to be distributed. For distributed operation, Nomad is as simple and generic as you can get. If you need to define a DAG, that's never going to be simple.