PlacemarkLayout: fix for IDL bug

BUG: 314542
GeoDataLineString: actually cache the rangeCorrected value
Projection: GeoDataCoordinates assignment is costly at that level
Projections: use detail level to filter points

- define the convention (which is contrary to PNT format):
 detail level 0 is for most important points, 5 for least important points
- use detail level filtering in projection code
const'ify
surround with QPainter::save() and QPainter::restore() since pen is modified
[API change] remove GeoPainter::autoMapQuality()

* surround code with QPainter::save() and QPainter::restore() if changing the painter's renderHints
introduce MarbleView
introduce MarbleGLView
introcude GlLayerInterface
clear depth buffer between layer rendering
TextureLayer
PlacemarkLayer
introduce triangulation algorithm for polygons

* taken from http://www.crystalspace3d.org/svnroot/crystal/CS/trunk/{include/csgeom/triangulate.h, libs/csgeom/triangulate.cpp}.
GeometryLayer
introduce GeoGraphicsScene::GlTile and use glDrawElements
adapt PlacemarkLayout
use shaders
GLRenderer