Windows: download busybox-win32 during make win-extras

copy it to echo.exe and printf.exe during make dist
This allows test/spawn.jl to succeed on Windows, since echo and printf
are only included as shell scripts in msysgit (and an echo.bat in
contrib/windows), but libuv cannot spawn shell or bat scripts.
In-place filt!, allow passing initial filter state

This redefines `filt` as `filt!` with a few modifications to perform its
filtering in-place. `filt` is defined as a simple wrapper, copying the vectors
that `filt!` modifies.

Further, both methods now allow an optional argument for the initial filter
state vector. This vector is modified in-place in `filt!`.
Be smarter about the initial filter state

Compute an initial state for filt such that its response to a step function is
steady state.
Revert "Be smarter about the initial filter state"

This reverts commit 19ba34c001152977d4fc011c75e1e08bb260aacf.
Fix copy! for ranges
NEWS and doc for filt state and filt!
hash for IntSet
Add Apache License as an option for Pkg.generate
Update generate.jl
print invalid-identifier symbols as symbol("..."); fixes #7188
added test case for #7188
isidentifier paranoia: don't assume id_char ⊆ id_start_char
don't quote operators, and do quote end keyword, in symbol display as suggested by #7531
Merge pull request #7532 from lendle/IntSet-hash

hash for IntSet
add documentation for symlink

Taking it off the secret menu :)
Merge pull request #7542 from sjkelly/patch-1

add documentation for symlink
Define det and logdet for AbstractMatrix. Fix some unrelated ambiguity warnings triggered by that change.
Explain symlink() behavior under WinXP. Ref #7542
Merge pull request #7544 from JuliaLang/anj/det

Define det and logdet for AbstractMatrix.
linrange: wrap definition for readibility (cosmetic).