Improve Polygon Triangulation Algorithm

This replaces the O(n^2) ear clipping algorithm with an O(nlogn) random
cut algorithm.