start refactoring PathController