Optimize pyenv-which: implement remove_from_path in Bash

This greatly improves the performance of `pyenv virtualenvwrapper_lazy`,
which happens to call pyenv-which a lot.

For profiling I've initially used:

    % zmodload zsh/zprof
    % eval "$(pyenv init -)"
    % pyenv virtualenvwrapper_lazy

    Before:
    % zprof|grep -E '(pyenv|virtualenv)'
     1)    1         754,07   754,07   58,95%    751,50   751,50   58,75%  pyenv
    21)    1           2,57     2,57    0,20%      2,57     2,57    0,20%  virtualenvwrapper_setup_lazy_loader
     1)    1         754,07   754,07   58,95%    751,50   751,50   58,75%  pyenv
           1/1         2,57     2,57    0,20%      2,57     2,57             virtualenvwrapper_setup_lazy_loader [21]
           1/1         2,57     2,57    0,20%      2,57     2,57             pyenv [1]
    21)    1           2,57     2,57    0,20%      2,57     2,57    0,20%  virtualenvwrapper_setup_lazy_loader

    After:
    % zprof|grep -E '(pyenv|virtualenv)'
     1)    1         383,30   383,30   27,97%    380,88   380,88   27,79%  pyenv
    31)    1           2,42     2,42    0,18%      2,42     2,42    0,18%  virtualenvwrapper_setup_lazy_loader
     1)    1         383,30   383,30   27,97%    380,88   380,88   27,79%  pyenv
           1/1         2,42     2,42    0,18%      2,42     2,42             virtualenvwrapper_setup_lazy_loader [31]
           1/1         2,42     2,42    0,18%      2,42     2,42             pyenv [1]
    31)    1           2,42     2,42    0,18%      2,42     2,42    0,18%  virtualenvwrapper_setup_lazy_loader

Fixes https://github.com/yyuu/pyenv-virtualenvwrapper/issues/13
README: mention https://github.com/yyuu/pyenv-pip-rehash
doc: use recommended python versions
Try to set `rpath` for `--shared` build of PyPy (#244)
Set PYENV_VERSION on building pypy from source
Merge branch 'pypy-shared'
Check existence of `curses` module before start building PyPy (#244)
Merge tests and remove_from_path from rbenv

This adds the missing parts from the upstream rbenv merge:
https://github.com/sstephenson/rbenv/commit/f4652fbbf0bbc3d07a36e8781b2be54ec1f75518

- https://github.com/sstephenson/rbenv/commit/e4cbf04592cfcd9d244fb83284e14524c8ba0377
- https://github.com/sstephenson/rbenv/commit/3ee395f9b576e4111650cef67328f4ffe3687b5a
Add test for PYENV_VERSION=3.4:2.7
Merge rbenv's "Isolate rbenv-which tests …" (c69d9a11)

This is the remaining part of
https://github.com/sstephenson/rbenv/commit/c69d9a1128283f20ad883178e3649d7ed92be663.

    commit c69d9a1128283f20ad883178e3649d7ed92be663
    Author: Mislav Marohnić <mislav.marohnic@gmail.com>
    Date:   Mon Oct 13 12:39:47 2014 +0200

        Isolate rbenv-which tests from any `.ruby-version` file on the system

        Having a `.ruby-version` file in any of the parent directories of the
        local clone of rbenv could cause the test suite to fail because it
        wasn't expecting a local version to be set.
Merge pull request #129 from blueyed/optimize-pyenv-which

Optimize pyenv-which: implement remove_from_path in Bash
Import recent changes from rbenv-versions
Fix "version X is not installed" with multiple PYENV_VERSIONs

This was introduced when merging the rbenv upstream change
(https://github.com/sstephenson/rbenv/commit/6bb7f07d2d).
Add Makefile for 'make test'
Merge pull request #254 from blueyed/add-Makefile

Add Makefile for 'make test'
Allow users to change the name of `install` target (#255)
Pass `--altinstall` to `ensurepip` (#255)
Use version suffixed executable (e.g. `python3.4`) for internal use of python (#255)
Stop creating symlinks w/ version suffix if `altinstall` has specified (#182, #255)
Calling `create_symlinks` after `ensurepip` is unnecessary (#182, #255)

Install script of setuptools-6.1/pip-1.5.6 will create those links if needed