Add in `contrib/debug_bootstrap.gdb` for https://gist.github.com/staticfloat/6188418
Rename subtype to issubtype
Fancy Mac Profiler
Don't skip frames
Use modified version of Apple's libunwind
Add Profiler equivalent of 'On Error Resume Next'

See the comment in src/profile.c for an explanation for what this is doing
Use KERN_INVALID_ARGUMENT instead of magic -309
multi.jl: worker finalization, remove :cmd, flush worker() info
Merge pull request #4159 from JuliaLang/kf/profile

Fix profiling on OS X
stream.jl: flush() for Pipe, too
Merge pull request #3995 from JuliaLang/sf/contrigdb

Add in `contrib/debug_bootstrap.gdb`
Deprecate subtype
Pkg.init(): just warn if already initialized instead of dying.
Pkg.scaffold: print list of available licenses to choose from.
Pkg: much clearer installed_version algorithm for unknown heads.

I'm not even sure that the old one was correct – this one is *much*
easier to reason about and be sure that it's doing the right thing.
Pkg.available: handle unregistered packages correctly.

Read.available now returns empty hash for unknown packages, which
in particular means that Read.installed_version now works correctly
for unregistered packages where it didn't before.
Pkg.checkout: merge whatever branch we're checking out by default.

This relates to https://github.com/JuliaLang/julia/issues/4123 and
may in fact be a sufficient solution. Previously the behavior was
very deeply confusing because one would end up in a situation where
METADATA and the repo we're in knows about much more recent versions
than the current local branch includes. This situation is fixed just
by doing a merge – only fast-forward to be safe. I'm not sure what
we should do if the fast-forward merge fails. We can deal with that
when we have a circumstance where it actually happens.
Pkg.release: better error handling in case of no registered commits.

The previous logic would go into an infinite loop -- I forgot that
prefetch returns a list of missing hashes and doesn't error out.
Merge pull request #4167 from nlhepler/lh/finalization

multi.jl: worker finalization, remove :cmd, flush worker() info
Pkg.{checkout,release}: get rid of the `force` option.

If a repo is dirty, the user can go in and clean up manually. The
force option was just a complication for something that people can
and probably should just do themselves since they're the ones who
dirtied the repo state in the first place.