Minor improvements (asserts) for Dijkstra algorithm

1. Negative edge weights reporting (exception is raised right away if weights map is a `Hash` or something similar; otherwise negative weight is reported when encountered).
2. Missing edge weights reporting.