Seperated out pathgen modules into seperate files