Get rid of board._graph

This Pull request removes the board graph, and relies instead on keeping track of edges and vertices in instance level variables. The methods `BoardGeometry.edge_synonyms` and `BoardGeometry.vertex_synonyms` make it possible to keep track of them in this way.

This allows for a more consistent API for how edges and vertices are addressed. Both will be addressable by a hexagon coordinate and edge/vertex number.