define kernelpath for clientside notebook manager

Otherwise starting the kernel choke on google drive path that are not localhost path.

I'm wondering if we should not make that the default behavior of `ContentsManager` instead of return `path`, 
or just verify that cwd is a dir in launch kernel or earlier. 
The kernelmanager has this code:

```
# short circuit for NotebookManagers that pass in absolute paths
if os.path.exists(path):
    return path
```

So this would result in starting all kernels in the root directory.

I think we should:

1. Remove that short circuit
2. Change this to return an empty string
3. Make the parent ContentsManager class do `return ''`, rather than assuming that the notebook path is a valid working directory. Then ClientSideContentsManager need not define this method at all.

I'm happy to work on this if you want.