Some refactoring + soul follows a path in graph.