Refactored PHP bindings tests

Patch by Benjamin Morel <benjamin.morel@gmail.com>

git-svn-id: http://svn.osgeo.org/geos/trunk@4016 5242fede-7e19-0410-aef8-94bd7d2200fb
OverlayOp: restrict intersection computations to the target extent

Speeds up INTERSECTION and DIFFERENCE operations between geometries
with small bounding box overlap.

git-svn-id: http://svn.osgeo.org/geos/trunk@4017 5242fede-7e19-0410-aef8-94bd7d2200fb
Further speedup difference/intersection at the validating phase

This avoids to insert to the output graph edges which do not intersect
the target envelope.

git-svn-id: http://svn.osgeo.org/geos/trunk@4018 5242fede-7e19-0410-aef8-94bd7d2200fb
Fixed compilation against thread-safe PHP (ZTS)

Closes #541
Patch-by: Benjamin Morel <benjamin.morel@gmail.com>
Signed-off-by: Sandro Santilli <strk@keybit.net>

git-svn-id: http://svn.osgeo.org/geos/trunk@4019 5242fede-7e19-0410-aef8-94bd7d2200fb
Import work-in-progress for a fast rectangle intersection op
Setup build scripts for new intersection op, fix some build issues

Lots to do yet!
Use GeometryFactory::buildGeometry from RectangleIntersectionBuilder

also move documentation from .cpp to .h file
Import draft unit test for itnersection op
Use RectangleIntersects predicate from RectangleIntersection
intersection operation fully builds now

.. moving on to tests
Enable some of RectangleIntersection tests

10 failures over 50 so far
Enable more tests, avoiding the "toxic" ones

toxic ones are those that seem to enter an infinite loop
Fix leftover bugs, all existing testcases now pass
Plug memory leak in rectangle intersection
Make RectangleIntersection immune to winding order
Allow Geometry::intersection use RectangleIntersection

This is guarded by a compile-time USE_RECTANGLE_INTERSECTION define
which is undefined by default (needs testing)
Stub C-API interface for RectangleIntersection