Add cdvirtualenv: cd to current active virtualenv

virtualenvwrapper has a cdvirtualenv command that changes the directory
to the currently-active virtualenv (if any). This commit adds a function
to do the same for virtualfish.
Automatic activation of virtualenvs when entering certain directories
Avoid changing working directories when looking for a virtualenv
Apparently, I'm an idiot.
Remove recursion guards, since auto activator doesn't even recurse any more
Add "connect virtualenv" command
Basic subcommand support
Autocompletion and reference fixes
Fixes for COMPAT_ALIASES, zero-argument commands, and auto activation
Rename auto activate command so that it can't be called using `vf`
Add help text to completions
Functions are faster & more reliable than aliases

As noted in the fish documentation, the "alias" command exists for
backwards compatibility with POSIX shells and usually isn't the best
method for aliasing commands. There have also been performance issues
with the "alias" command, as noted in the fish issue tracker:
https://github.com/fish-shell/fish-shell/issues/486

In general, fish functions are more reliable and provide better
performance.
Merge pull request #6 from justinmayer/aliases-as-functions

Use functions instead of aliases for VEW backwards compatibility
Support custom auto-activation files. Fixes #5.

This changes the default auto-activation filename from .vfenv to the
more standard .venv, while at the same time providing a setting that
can be used to customize this filename to any arbitrary value. For any
folk who already have .vfenv files, this setting can be used to provide
backwards compatibility.
Merge pull request #7 from justinmayer/auto-activation-file

Support custom auto-activation files. Fixes #5.
Merge in new subcommand-based style
Document vf connect command
Fix formatting, add note regarding sourcing virtual.fish
Add global requirements file
Avoid hardcoding pip cache directory

Hardcoding the cache values in 221954d (i.e., `--download-cache
$VIRTUALFISH_HOME/_pip_cache`) will likely override the user's pip
configuration settings. In my case, I have the following in
`config.fish`:

    set -x PIP_DOWNLOAD_CACHE "$HOME/.pip/cache"

If I already have a metric ton of cached packages in
`$HOME/.pip/cache` (and I do), why would I want or need another
cache created in `$VIRTUALFISH_HOME/_pip_cache`?

(In case you're wondering, "Maybe Virtualfish should look for these
environment variables, and if they aren't found, fall back to
defaults such as `$VIRTUALFISH_HOME/_pip_cache`?" ... that would
still potentially cause problems because pip configuration can also
be stored in `~/.pip/pip.conf`.)

This commit removes the hardcoded values and instead provides
instructions in the README that explain how to use pip's cache and wheel
settings to speed up global requirements installations.