Glad it could have been of some use to you !
For the list of connections with 3D points, I would use a two-dimensionnal table with vertices references, just as I do with 2D points.

For example, with three points named A, B, and C, whatever their coordinates (either 2D or 3D), you can always maintain a connection table with the following format :

table[A] = [ B, C ] # A is connected to B and C
table[B] = [ A ] # B is connected to A
table[C] = [ A ] # C is connected to A

This allows for unidirectional connections as well, in that case you don’t mirror the connection in the table when creating it. For example

table[A] = [ B, C ] # A is connected to B and C
table[B] = [ A, C ] # B is connected back to A and to C
table[C] = [ A ] # C is only connected back to A

Hope it helps!