Actually the messagebox ($this->data['message']) comes after "header" (which can be set by an Extension, e.g. GoogleLogin). The message box is used (e.g.) to show messages like "Please login to change your preferences." when the user requested Special:Preferences and isn't logged in.
I would suggest to move this message box before the header (after warningbox with "you are already logged in"). Reason: An Extension like GoogleLogin extends the Login form with several form fields, but the message, that the user has to login to finish his action is somewhere in the middle of the form (after the extension output). This looks crappy. Another solution could be to add another section like "afterMessages" or something like. Would be great to have a better solution for this :)
Version: 1.24rc
Severity: enhancement