"npm install ./pkg@1.2.3" should install local module

fix for #4662

Currently npm splits "./pkg@1.2.3" into "./pkg"@"1.2.3". But it doesn't make sense to do that since "./pkg" is not a valid package name. So I added that validation.

Test relies on a fact that npm is doing fs.stat for local installs. I didn't want to create a big file structure for this small task, since suite is taking too long to execute already.