Add optional filename parameter to savepoints()
Process triangles ourselves so we can get midpoints

Instead of handing the data points off to python-poly2tri/test.py,
we'll process the triangles ourselves (with cdt.triangulate()) so
that we'll have the actual triangle data and can do things like
figure out midpoints and connect them.

Our code also now handles holes, so we're all set for drawing those
midpoint-connecting line segments.