Jana Sattainathan gives a few options for getting around hard-coded paths in a Powershell script:
What if the KillerApp’s home folder suddenly moves?
Now, how do you make your app work with all its scripts without having to change code if you move it to a different folder?
You could now change the initial script that that dot-sources all the functions to alter the path and you are all set. This is still not ideal because you have to make a change when the location changed.
Click through for several options, including PSDrives and even automatically dot-sourcing Powershell scripts in the current and all child directories.