Reorganize message_11 module

I "un-nested" the various classes, created aliases to ensure backwards compatibility, and updated tests and documentation to use the un-nested forms. 

I also created a `common` module to pull out functionality that can be shared between messages_11 and messages_10 (and perhaps elsewhere).

@MarkDavidson are you OK with this approach? If so, I can either make the same changes to messages_10 in this pull request, or we can merge this one and then make the same changes to messages_10.