Dead end. I need to derive from Ogre::Mesh.

I have tried to move Mesh::generateLodLevels to Ember,
which would allow to modify the algorithm, but
unfortunately I can't insert item to mMeshLodUsageList.
Allow to customize Ogre::Mesh.
Move listener to EmberOgreMesh.
Change distance to float.
Separate enum from Ogre's enum.
Implement ProgressiveMeshGenerator to customize ProgressiveMesh.

I have renamed it to ProgressiveMeshGenerator,
because it generates the progressive mesh indexData,
but don't handles the swapping.
So the naming in Ogre is incorrect.
Fix build without precompiled header.
Add casting support to LodDefinitionPtr.
Create an interface for exporting loddef with LodDefinitionManager.
Extend the interface of OgreEntityRenderer.
Extend LodDefinition interface with lua compatible functions.
Fix uppercase naming.
Connect GUI to the Lod system.
Implement ProgressiveMesh algorithm.
Add Ogre license.
Add assert for outdated collapse cost detection.

This is quiet CPU heavy assert.
Update all edges for the neighbors.

This is needed to pass the new assert.
Add PM_BEST_QUALITY macro.

Also clean up triangle duplicate detection.
Though that duplicates are rare
and detection uses lot of CPU cycles.
Fix collapse cost calculation.
Handle rare conditions in best quality mode.