GeoPolygonGraphicsItem has special code paths for polygons of buildings
which complicate the logic (and also bring a small price at
runtime, due to repeated checks or unneeded building properties).
Distinct subclasses of GeoPolygonGraphicsItem for each type make the methods
more simple and focussed.
With more work on Vector OSM I expect even more special code for
GeoPolygonGraphicsItem, so separate subclasses should help even more in the
future.
Input wanted especially on:
- naming pattern of new classes
- who should know about types, GeoPolygonGraphicsItem or GeometryLayer? GeometryLayer::whichBuildingAt(...) already puts concept of buildings into GeometryLayer (though GeoPolygonGraphicsItem's isBuilding() checks for even more visual categories, mismatch correct?)