After several weeks I finally got my (mostly) robust nav mesh generator working. The algorithm takes a set of simple polygons as input and outputs a triangulation of the walk-able region