Yeah, that will have to do for now. I actually did look at adding a custom message while I was fixing this, but it would require some refactoring, and now is not the time for that.
Please post this as a bug. I think I'll allow a string to be included in the array (so for example, to add a header you'd just call the header template directly, same as what $form->addHeader() does.
Would that work?
Yes, it's always worked that way. If you're working in development mode, you need to create the templates in your dev directory, same as you would for other templates.