Add an assertion to reflect unreachable code
Stop reaping children from SIGCHLD signal handler

Prior to this fix, a child process may be reaped in one of two ways:
1. By a call to waitpid() within job_continue
2. By a call to waitpid() within the SIGCHLD signal handler

Only the second call was with the WNOHANG option. Thus if the signal
handler fired first, and then the waitpid call fired, we could get a
deadlock because we'd end up waiting on a long-running process. I have
not been able to reproduce this on fish 1.x, though it seems like it
ought to reproduce there too.

This fix migrates the waitpid() call out of the signal handler; the
second class of calls moves to job_reap. This eliminates the possibility
of a race, because we check for job completion before calling waitpid,
and there is no longer the possibility of the job being marked as
complete asynchronously. It also results in a massive conceptual
simplification, since the signal handler is now very simple and easy to
reason about (no more walking jobs lists, etc).

This partially fixes a bug reported in #1273
Add setfacl completions
Remove some previously buggy but dead code that I mistakenly resurrected
Revert "Remove some previously buggy but dead code that I mistakenly resurrected"

This reverts commit 090f027de179f5bb92f07e5c947f3f273229d840.
Revert "Stop reaping children from SIGCHLD signal handler"

This reverts commit 3fe10692199fc20a5f4b6ac5057cce43babc5f36.

In light of #1768
Move LICENSE to COPYING and update text.

Work on #1073.

fish is not exclusively distributed under the GPL version 2; the
canonical reference is doc_src/license.hdr, so use that as the full
description.

[skip ci]
Reintroduce "Stop reaping children from SIGCHLD handler"

This re-introduces 3fe10692199fc20a5f4b6ac5057cce43babc5f36
with some associated fixes to address #1768.
expand: expand tilde to canonical paths

Work on #1133.
prompt_pwd: Use tilde expansion to get real full home path

Closes #1133.
Added hg repo status to robbyrussell example prompt
history: put the output through the pager in interactive mode

(Ideally, the behaviour of git could be implemented: pipe the input
through a pager iff the length is > window size and in interactive
mode).

Closes #1076.
contains: add documentation regarding the use of `--`

Closes #1194.

[skip ci]
Add Composer completion