Added select() variant with QgsFeatureRequest for simpler construction of requests
Allow access to feature attributes by name
Further tweaks to QgsFeatureRequest API, support featureAtId
[API] added QgsFeatureIterator, changed QgsVectorProvider API

Vector data provider now has getFeatures() method to access features.
select(), nextFeature(), featureAtId(), rewind() were removed resp. moved to provider's feature iterator implementations.

Providers that currently do not implement the new API were disabled.
Fixes after rebase
Removed unused QgsFeature::typeName() and QgsFeature::setTypeName()
Removed unused QgsFeature::isDirty() and QgsFeature::clean()
QgsFeature: use a vector of attributes instead of a map (for faster access)
Store attributes and fields in vectors instead of maps
Skip rendering of features without geometry
Enabled delimitedtext provider again
QgsVectorLayer: large internal refactoring

Most important changes:
- introduced feature iterator for QgsVectorLayer
- vector editing moved to QgsVectorEditBuffer
- complete rework of undo/redo commands for vector layers
- geometry cache separated from editing (QgsVectorLayerCache)
- non-essential editing functionality moved to QgsVectorLayerEditUtils
Merge remote-tracking branch 'origin/master' into new_vector_api

Also disabled mapserver until compilation is fixed.
Fixed tests.

Conflicts:
	src/app/legend/qgslegendlayer.cpp
	src/app/qgsattributedialog.cpp
	src/app/qgsattributedialog.h
	src/app/qgslabelpropertydialog.cpp
	src/app/qgsmaptoollabel.cpp
	src/app/qgsvectorlayerproperties.cpp
	src/core/CMakeLists.txt
	src/core/composer/qgsatlascomposition.cpp
	src/core/qgsexpression.cpp
	src/core/qgspallabeling.cpp
	src/core/qgsvectorlayer.cpp
	src/core/qgsvectorlayer.h
	src/core/qgsvectorlayerimport.cpp
	src/mapserver/qgsprojectparser.cpp
	src/mapserver/qgswfsserver.cpp
	src/mapserver/qgswfsserver.h
	src/mapserver/qgswmsserver.cpp
	src/providers/postgres/qgspostgresprovider.cpp
	src/providers/spatialite/qgsspatialiteprovider.h
	tests/src/core/testqgsexpression.cpp
	tests/src/python/test_qgsmemoryprovider.py
Changed data structure for added features from list to map to allow efficient lookups
Checking of invalid values when calling edit buffer operations
Fixed isModified()
Re-enabled GPX provider
Slightly faster preparation of vectors of points
Faster initialization of attributes
Fixing support for spatialite 4.0