Added bash support for completion of full command line
foundation for a help system where each command holds its own docs

Docs are comprised from "Usage", "Summary" and "Help" sections, where
"Help" can span multiple commented lines. If it is missing, "Summary" is
shown in its place.

References #204, references #206
Fall back to $PWD if a local version file can't be found in $RBENV_DIR
When the ruby shim is invoked with a script, set RBENV_DIR to the script's dirname
Ensure outdated shims are removed first when rehashing
Speed up rbenv-rehash with a simpler indexing approach
Run `hash -r` after `rbenv rehash` when shell integration is enabled

Fixes #119
Merge pull request #299 from sstephenson/automatic-local-exec

Automatic local exec
Merge remote-tracking branch 'griff/morecompletion'
Add zsh support for completion of full command line
avoid prepending system ruby to PATH

System ruby is already on PATH (that's the definition of system ruby) and by
duplicating its path by putting it in front, we can break the user's
environment.

Fixes #275
Merge branch 'master' into help
Improve syntax for inline documentation and allow for multi-line usage
Add `rbenv help --usage`
Don't print version before help summary (bare `rbenv` already does this)
display help for commands that have Summary but not Usage

A command doesn't have to specify Usage docs if it doesn't accept any
arguments. The default usage for a command will be printed as:

    Usage: rbenv ${command}
allow indented lines in help text

Before, lines of help that were indented were stripped away.
new-style documentation for most commands
Wrap documentation comments at 70 columns
Documentation tweaks