WIP: validation message generalizations

@talbs I have these code changes (which are not close to being ready for code review!) on my sandbox. Here is a test course you can use (staff@example.com):

http://studio.cahrens.m.sandbox.edx.org/course/brian/brian/brian

I wrote up several questions and thoughts in https://openedx.atlassian.net/browse/TNL-704

There are also some comments directly in component-validation-messages.underscore
For the case of messages that are returned by a superclass, it seemed more natural to me that the superclass messages appear at the end. Therefore I decided to render them in the reverse order in which they are added. I don't feel very strongly about it.