Avoid `rbenv-exec` calling out to `rbenv-version-name` twice

Running any shim (and thus `rbenv-exec`) would always execute
`rbenv-version-name` twice: once in `rbenv-exec` and another time in
`rbenv-which`, even though RBENV_VERSION variable would have already
been populated at this point.

Now RBENV_VERSION is respected within `rbenv-which`.
Improve performance of rbenv-which when RBENV_VERSION=system

This implements removing of the shims path element via bash
substitution, instead of jumping around in all the `$PATH` elements.
Clean up PATH sanitization in rbenv-which
Merge branch 'speedup-which'

Closes #560