Integrate further tests

As of this commit, points on edges are treated differently.  See
README.md and code comments for details.

Don't think the code will cope with a point lying on a coinciding
outline and cutout diagonal edge just yet.