Triangulation

Adds a marginally functional triangulation routine based on prior work by Suraj and myself.
Also updates PolygonVisual to make use of it. 
Not ready for merge yet--this code is complex and broken in many places; needs a lot of testing / fixing / cleaning. 

Anyone interested in helping to debug the beast can add test routines and/or run the `util/geometry/triangulation.py` file directly to get a visualization of the construction process (requires pyqtgraph).
And in my mind, adding ~150 non-covered lines is already motivation enough, since it gives a false / more negative impression of our code coverage.