Broke out path class into its own header

And started implementation in path.cc