get part B stuff to compile, test it

could definitely be cleaner, that is for sure.
don't construct Edge objects when all that is needed is the weight
anticipating compile errors

but the substance should be there