[geometry] Fixed several robustness issues: non-valid polygons/rings are not added anymore;
collinear is now symmetric (it could happen that A was collinear w.r.t. B but not vice versa, that is now resolved);
vertical/horizontal (nearly collinear) segments are now checked later (this and previous bug were found by buffer-high-volume tests).
Added testcases (buffer_rt_f did cause problems with previous implementation, fixed now). Updated testcases (some cases are quite sensitive to implementation while output is still valid)