rbenv can now initialize properly even without execution rights on $PWD

With this revision, rbenv does not fail to initialize anymore when it is launched in a deleted directory or a directory that for some reason isn't accessible.

The changes just check if the old pwd is an executable file before trying to set is as the current directory.
If not, the current directory becomes the root.

Perhaps we shouldn't set any current directory if the old one is not accessible anymore.

Note that there is also warnings from rbenv-which which appear when trying to use rbenv from an unnaccessible directory. Though in such cases, rbenv still behaves normally: I didn't believe it was worth making a change.
What if $OLDPWD does not exist anymore? Same check (`test -x`) could be useful here too.