Rename STYLEGUIDE.md to CONTRIBUTING.md, so GitHub would notice it.
documentation for test and function (closes: #734)

plus speling in documentation for bind.
Note that this commit does not re-enable the generation of the manpage for
test, which will therefore still fall through to the system manual page with
`man test`.
builtin_test: drop unused condstr
git_prompt: Informative upstream with informative status

This makes $__fish_git_prompt_showupstream = "auto" mean "informative"
instead of "git" if $__fish_git_prompt_show_informative_status is set.
git_prompt: Show upstream with informative status

This makes $__fish_git_prompt_show_informative_status imply
$__fish_git_prompt_showupstream = "informative", while adding a none
option for showupstream to disable it if desired.
git_prompt: Change informative character defaults

This changes the defaults for several characters when
$__fish_git_prompt_show_informative_status is set so that the prompt
looks more like the typical informative prompt.

Before:  (master >1<2|+3#4*5%6)
After:   (master↑1↓2|●3✖4✚5…6)

The defaults were taken from magicmonty/bash-git-prompt
git_prompt: Make informative separator configurable

It reuses $__fish_git_prompt_char_stateseparator, since it has a
similar meaning and goes otherwise unused when
$__fish_git_prompt_show_informative_status is set.
Fixes broken link in docs. Fixes #943
.gitignore: ignore generated source docs, don't ignore Doxyfile.help

Doxyfile.help isn't generated
git_prompt: Fix bad test if bash.showUntrackedFiles isn't set
git_prompt: Default upstream_prefix to nothing

git.git's __git_ps1 doesn't have an upstream prefix. I'm not sure why
one was added to our __fish_git_prompt, but it certainly shouldn't
default to a space.
docs: add editor documentation, move binding information

closes #931
also fixes a crossreference error
accidentally reopened #943, fixed now
.gitattributes: mark most scripts in build_tools as not for export

(but not all!) build_documentation.sh is needed for the tarball if you run make distclean
add git_version_gen: generate a version number from the git tree

Originally from the git sources (GIT-VERSION-GEN)
(C) Junio C Hamano <junkio@cox.net>
Reused under GPL v2.0
Generate version numbers dynamically

This commit hooks the Makefile up to generate a FISH_BUILD_VERSION
symbol and kills off PACKAGE_VERSION in .cpp files.

It also modifies the tarball generation script to add the necessary
version file for releases.
configure.ac: generate the fish version number dynamically

Note that this will NOT get updated on every run - even if autoconf is run manually, the value may be cached. The PACKAGE_VERSION variable/symbol will not be reliable. Use FISH_BUILD_VERSION instead.
osx/config.h: define the FISH_BUILD_VERSION symbol
Makefile.in: don't build dist stuff from Makefile, use build_tools
tarball contents should match the filename