macros for turning off bounds checks. fixes #1392

`@inbounds expr` allows bounds checks to be omitted for code syntactically
inside the argument expression.

adds @inbounds to matmul, comprehensions, and vectorized binary operators.
Merge branch 'master' of github.com:JuliaLang/julia into jb/inbounds
Merge branch 'master' of github.com:JuliaLang/julia into jb/inbounds
clarify boundscheck expressions
Merge branch 'master' of github.com:JuliaLang/julia into jb/inbounds
Merge branch 'master' of github.com:JuliaLang/julia into jb/inbounds

Conflicts:
	src/alloc.c
	src/codegen.cpp
	src/jltypes.c
Pkg2: slight error/info messaging tweak.
Alternative fix to #3594
Merge pull request #3629 from amitmurthy/amitm/ptest

Alternative fix to #3594
Merge branch 'master' of github.com:JuliaLang/julia into jb/inbounds
Merge pull request #3268 from JuliaLang/jb/inbounds

RFC: macros for disabling bounds checks
Move peakflops() from util.jl to base/linalg/generic.jl
Merge branch 'master' of github.com:JuliaLang/julia
Use @inbounds in sparse matrix multiplication.
Gives 20% improvement on the perf test in #942
run all finalizers on exit. fixes #3624
enable a few more optimization passes
Simplify Pkg2.resolve
Merge pull request #3615 from JuliaLang/kf/pkg2

Simplify Pkg2.resolve
Merge branch 'master' of github.com:JuliaLang/julia
Revert "Simplify Pkg2.resolve"

This reverts commit eeb34f7c1878922c98a1b696b9bd7db146422f43.

This is deeply broken. Resolve simply doesn't work.