fix for #7628 undo does not work ok

adding a removePoint method, which can also take a negative index to start
removing vertices from the end.
actual fix for #7628 was to not remove the last node, but the one before that.
fix #7642
Fix occasional NaN when automatically calculating heatmap radius
[Fix 7641] Disable margin control for atlas when a point layer is selected
Change fixed scale control to radio button
Fix margin size not saving
Fix segfault when html composer labels contain img tags
qgis wfs server cannot serve geometryless tables

http://hub.qgis.org/issues/7534

In a project where there are geometryless tables everything seems to allow publish them with qgis wfs server. In the project/layer properties all the proper panels (ex. OWS server) seems to allow this operation, but then when accessing the wfs service with the WFS client, the table is not added correctly in the project. In the TOC shows a strange icon (instead the expected table icon) and the table of attributes is empty.

In the client the support for geometryless wfs tables should be available since

http://hub.qgis.org/projects/quantum-gis/repository/revisions/aedddc22b11e26df900d1ff91d6d23c94d905c78

so it is a server issue.
Fix attributetable and vectorlayercache
* In the attributetable there was a mess with references and pointers, originating from 66fadee8ef.
* QgsVectorLayerCache did sometimes cache features which did not contain all information which needs to be cached and therefore corrupting the cache and leading to incomplete cache hits.
* Add a unit test for the cache problem
* Fix QgsCacheIndexFeatureId
* QgsAbstractCacheIndex::getCacheIterator now produces a QgsFeatureIterator (instead of a list of Feature Ids). This allows to combine a mixed response, partly satisfied by the cache and partly by an additional query to the backend.
Merge pull request #544 from rduivenvoorde/rubberband#7628

fix #7628