Added tests for addVertex, removeVertex, addEdge and union

Oh, I didn't know `equals` won't work. If we don't have this check, then we can't detect the case you previously mentioned, where we add an already existing vertex with non-existing edges. How can we deal with that?