Now, about those normals. I've done some testing and the normals generated by my app, both in Quake's and Ogre's coordinate systems, are absolutely fine. It turns out there is a limitation in Ogre that I noticed when I first wrote the app, but kinda forgot about afterward. And it's that limitation that's the cause of the problem. Let me explain.
As you know, morph animation is not recommended for use with Ogre, and Ogre only supports it for legacy purposes. One big disadvantage of morph animation is that it requires the mesh's normals to be interpolated
and normalized every frame. This is a costly operation and because of this, Ogre assumes (yes, one of the few assumptions made by Ogre) that morph (and pose) animations are used only for small motions where the normals remain approximately the same. This means that with morph animated meshes, you can define only one set of normals, tangents, colors and texture coordinates, while only the vertex positions may change in the animation. That's not an oversight by the Ogre team, it's a conscious design decision that allowed Ogre to shed some excess baggage.
This topic pretty much explains it.
As for my app, it conforms neatly to these rules, but that means it can extract the normals from only one frame, namely the one indicated by the <referenceframe> tag. Every other animation frame will use the same normals. Since the animations in most MD2/MD3 models are not limited to small motions (on the contrary), that single set of normals will not be correct for most frames, resulting in weird lighting behaviour.
So what can I do about this problem? Not a damned thing I'm afraid. I can only repeat that it is not recommended to use Quake models in Ogre for anything but testing purposes, unless it's a static object. You could nag to sinbad about adding support for normals in morph animations, but that will probably be in vain, or you could add it yourself in a custom Ogre build. As for my planned version 1.1, that will still happen, but it will be limited to the couple of small fixes that were requested here.
P.S. mkultra333: if it's really that important to you, I can paste an MIT license header in every source file for the next release. It doesn't really change anything as far as I'm concerned, but if it will ease your mind, then it is worth doing.