when an action (e.g. moving a way) caused multiple child elements
of the same parent to be changed, their parent was also loaded into
the tree multiple times during `tree.intersects()`.
this fixes#1978
The main problem with the existing logic was that it
did not update the extents of relations when previously incomplete members were loaded.
It was also overly stateful; the various queues and flags
are no longer required.
Fixes#1928.
Fixes#1540.
the width or height of the rtree rectangle created by extentRectangle
would be negative. These rectangles insert ok, and are found by search,
but they cannot be removed.
issue #1370