Added vertex property inspectors.

Currently, a-star search is the only algorithm using any vertex properties (for
the distance heuristic), so the a-star code was changed.

The a-star code used the vertex type to index into the colormap, so would
only work with graphs with integer vertex type. I generalized and abstracted
away the colormap type.  This probably should be a separate commit.

It may seem that I abstracted the colormap too far, but allowing the colormaps to be 
hashtables when the vertex_map or edge_map is not available will allow us to use
hash based graphs a la networkx.  Then we will be able to add and delete vertices and
edges, and the algorithms will only be a constant factor slower (assuming a good dict implementation).

The current implementation seems to be transparent after the compiler does its magic.

If this is OK, I'll make a hash based graph type (actually 2 because it makes sense to do directed and undirected
graphs separately.