added a ton of code for merging edges and a broken re-implementation of evolve() using the new half-edge data structure