Add PkgResolve module, use it in Pkg

Substitutes the linear programming approach to
package resolution with a max-sum algorithm
PkgResolve: prune unnecessary versions
PkgResolve: misc. improvements

*) fields no longer normalized
*) accuracy settable via environment variable
*) better handling of unsat cases
export GenericString
close #2016
Formatting fix in modules documentation.
fix #2018 (iostring test failure)
fix iostring tests.

There are still some tests failing for me, e.g. linalg, but this is
at least an improvement.
Merge branch 'master' of github.com:JuliaLang/julia
GenericString: don't export, prefix with Base in test/string.jl.
Revert "minor blas/matmul cleanup"

This reverts commit a318691e859d64227d57111aff65560d7847f03e.

This commit broke test/linalg.jl.
fix broken tests by adding various missing endof methods.
Fix install-glpk-wrapper Makfile target.
Hopefully this fixes travis.
Merge branch 'master' of github.com:JuliaLang/julia
Update package listing with new packages
Merge pull request #2023 from aviks/topic/pkglist

Update package listing with new packages
Partial reinstatement of "minor blas/matmul cleanup" [a318691e85].

This partially reverts commit 3fd74a88b7b17b1f6576d96fce0b99682d7b42a9.
Pkg: automatically create ~/.julia if missing [closes #2021].
Merge pull request #1909 from carlobaldassi/pkgresolve

Alternative max-sum-based approach to package resolution
Merge branch 'master' of github.com:JuliaLang/julia
Update package location.