This looks very helpful, and I'll definitely use the plugin. I'm not sure if it needs to go in core, but if it did that would be cool.