Raise debug level to 2 on annoying Changing language to English message

Fixes #1386
Remove help completion for eval, which doesn't work

Fixes #1379
web_config: send correct MIME type (and actually send it)
Revert "Remove help completion for eval, which doesn't work"

This reverts commit d2f23e1df45f07fb4d716b07c40de7381e539b9d.
Support -h/--help with `eval`

`eval` prints help if given a single argument of -h or --help.

Fixes #1379.
fish_config: Log the path for errors
web_config: Interpret fish output as utf-8

Use the unicode replacement character in place of non-utf-8 sequences.
Rewrite __fish_print_help to produce better results

As a result of this rewrite, the output now:

* Expands to fit the terminal width, like `man` does
* Preprocesses the manpage with `tbl` just in case, since `man` does
  this, even though I doubt any fish manpages use `tbl` formatting.
* Handle bold/underline with the `ul` command as it was designed for
  instead of trying to fake it with `sed`.
* Compresses blank lines as `man` does with the default `less -is`
  pager.
A little extra tweaking so builtin_print_help looks better

The terminal width magic that __fish_print_help learned doesn't help
when builtin_print_help runs it in a subshell. Instead, add an
undocumented --tty-width flag to __fish_print_help that's used to pass
the terminal width.
Add GPL2 LICENSE file

Fixes #1073.
Vagrant completion updates

Improve vagrant completions for some commands to avoid spurious
completions, and add completions for some missing Vagrant commands.

Fixes #1748.
Support space separators for abbreviations as part of #731
web_config: use only Python 3-style (Unicode) string literals

Improves Python 2/3 compatibility.
(It is the distant future, the year TWO THOUSAND.)
web_config: further python2/3 unification
Mark unknown versions as unknown.