This used to sit in another repo, along with some other junk. Moving it to its own home now. Caveat: Still very much a WIP.