Make global:pshazz_path work with all providers. e.g. HKCU:, IIS: etc

~ behaves differently when the current working directory is in a different provider than the filesystem one. For example: just try switching to the registry with cd HKCU:. The prompt dies. 

I think the desire here is to work like a bash prompt where ~ always refers to the user's home path in which case $home is a better choice than resolve-path ~. Also resolve-path ~ seems to error out if $pwd.provider.home is null/empty

Hope this makes sense.