An implementation of Dijkstras shortest path algorithm in Java