rename Pkg.release => Pkg.free

for @simonster, see

https://github.com/JuliaLang/julia/commit/4b92a8cd02bd2bb88198af9c6d5410f54f33e51a#commitcomment-4362500
Pkg: detect new REQUIRE files even when not git added.
Pkg docs: rename Pkg.release => Pkg.free
Merge branch 'kf/textmime' into kf/osx1092
Pkg.checkout: pull from origin by default.

Not doing this was just too confusing. You can still opt out.
Merge pull request #4622 from danluu/multiple_def

Remove jl_ismutable, jl_isimmutable in favor of jl_is_mutable, jl_is_immutable
Pkg.generate refactor: GitHub user not needed to gen .travis.yml.
Fix #4623
Pkg.generate: `force=true` to regenerate files and leave unstaged.
Pkg.generate: on non-new rollback, do checkout in $pkg dir, not top.
Pkg.generate: cosmetic change.
Pkg.success: on Windows do `git update-index --really-refresh` first.

This hopefully will fix #4349 but may slow things down. Sigh.
replace ASCII banner with Julia logo image
README: make logo link to julialang.org in new window/tab.
Pkg/Windows: only `update-index --really-refresh` in non-bare repos.

Close #4349 again.
Pkg/Window #4349 a.k.a "package dirty, bailing", take 3.

So *this* git command always returns true but *prints*, yes, prints
the line "true" or "false". Seriously, git?
linalg/bitarray: bugfixes (istril/u, kron)

Also add tests
bitarray: implement preprend! and sizehint
bitarray: make bitshift operators saturating

This is for consistency with how those operators are
implemented for numbers.

Also, code cosmetics.
linalg/bitarray: additional check in dot

Also, code cosmetics