graphs now have an interface to have weighted edges when desired  also graphs can be undirected. edges now hold a parent pointer.other small tweeks.