@demofox Looks great, love the name. 
I was going to say wouldn't this make sense to have as just a single .h _and_ a single .cpp, but I guess a huge use case is just getting up and running very quickly and then you might not have a build system anyway.