refactoring Path related classes into a separate package