Add support for multiple goal cells to DijkstraMap

DijkstraMap can now handle multiple goals when computing (was never
possible before). If there is only a single goal, compute() will use the
optimized method added in the previous commit. If there are multiple
goals, the old method for compute is used.

Updated docs for DijkMap, Dungeon, and Room. Dungeon and Room are related
to other recent commits.