refactor to use Redux instead of localstate
re #9629
Nonrecursive algorithm for path building + path rendering on map