Fixed issue for collinear lines touching

Collinear touching lines, meaning they only intersect at an
end point, where being incorrectly returned as not intersecting.

Added a special case for when any of the points are equal as
this is easier than adding it to the exclusive or.