Vertex descriptors are now real, distinct types. This clears a potential
problem where compilation would fail on overloads where the descriptor and
properties/keys are the same type.
Added all the missing add_edge() overloads in both directed and undirected
graphs.
Implemented part of list-based in/out edge storage.
Started rewriting some of the traits checks for directed/undirected graphs.
These will clearly need a fair amount of work in the future.