__fish_print_packages: whitespace fix
__fish_print_packages: ignore errors, do less manipulation

Closes #479 by piping STDERR to /dev/null.

Also does much less manipulation of the package list; there are no
packages in any of the archives containing the names that are stripped
out as far as I can see.
Added git stash completion options.

Squashed commit of the following:

commit 962a19dfab7f04552ce7919fff91e945bab53bde
Author: Mandeep Sandhu <mandeepsandhu.chd@gmail.com>
Date:   Wed Sep 18 18:09:49 2013 +0530

    Add missing 'git stash' completion options

    Fixed typo.

commit 57bbd89caf922228363418cacbfa1daeb352e520
Author: Mandeep Sandhu <mandeepsandhu.chd@gmail.com>
Date:   Wed Sep 18 17:59:36 2013 +0530

    Add missing 'git stash' completion options

    Added the following options which were missing:
    * save
    * branch
Small fix for fish_update_completions (amended)

Amended from https://github.com/fish-shell/fish-shell/pull/1003.
Fix a Unicode parsing error; search man6.
__fish_print_hostnames: do a better job of searching SSH files
scp completions: use __fish_print_hostnames rather than doing independent hostname searches
rsync completions: complete hostnames ala scp

Closes #1010
Fix set_color crash on 'ignore' and 'reset'
https://github.com/fish-shell/fish-shell/issues/996
reader_replace_current_token can be made static
Fix for parse_util_token_extent doing the wrong thing inside a command
substitution. Fixes https://github.com/fish-shell/fish-shell/issues/833
Refactored builtin_echo with better argument parsing.
Update to latest config.sub and config.guess versions

(Now from Automake 1.11.6.)
Update to newer install-sh version

(Now from Automake 1.11.6.)
Improve dangerous/undefined PID expansion behavior

1. Use Bash-like expansion for empty searches (when you just use a '%' by
itself).

'%' will now *only* match the last valid backgrounded process.
If there are no such processes, an expansion error will be generated.

'%' by itself would previously match either *all* backgrounded
processes, or failing that, all processes owned by your user. If you
ever tried to run `kill -9 %`, it would either kill all backgrounded
processes or *all* of your processes. I'm not sure why anyone would ever
want that to be a single keystroke away. You could almost typo it.

As a result, `fg %`, `bg %`, `kill %`, etc will all operate on the last
process touched by job control.

2. Don't run 'by-name' matches when the search term is numeric.

This prevents you from running a command like `kill %1` and accidentally
killing a process named something like "1Command". Overloaded behavior
can be dangerous, and we probably shouldn't play fast and loose with
expansion characters that generate process IDs.
Add Perl modules completion.
Disable flow control per #814
default key bindings: add further iTerm2 bindings
default key bindings: fix syntax errors introduced in 735af50
Fix one element tuple to be actually tuple.

While in this case it doesn't mean much (neither `z` or `-` would be
passed to options parser), it makes things possibly less buggy.