Hah ok, so I'm back at Meshes having Polygons and Polygons have Vertices. Now I need to figure out how Polygons can share vertices
hacky but welding works
Removed Welding Vertex from the Mesh to Polygon SetVertex() - seems logical as the method was already there.
Next up - how can Vertex sharing across Polygons happen automatically?
Hmm is something wrong with my hashing calculation (thanks Steve :P )
In the below console log, note 493 is correctly identified twice but it's matching hash differs.

Vertex calculations: [352, 493, 637, 496]
Hashes: [3585251568, 4998793306, 4977327399, 4313713916]
Vertex Calculations: [398, 564, 659, 493]
Hashes: [3490236557, 3283699448, 4792256197, 3587757810]
basic polygon linking
added old polys back in - all edges calculated correctly. awesome