implement a simple code coverage tool

To use the tool, pass --code-coverage. On exit, for each source file foo.jl for
which we have data, write foo.jl.cov next to the original file, with execution
counts in front of each line, or "-" if no data.

also start consolidating compiler options into a jl_compileropts struct
fix redundant first line count

switch line counters to internal linkage
Travis tests with release and nightly
Merge pull request #5439 from aviks/as/travis

Travis tests with release and nightly
Fix #5454
More logical indexing fixes, and add a few more tests
Fix #5453
ctranspose should use conj() for all arrays. fixes #5449
Add inferred macro

inferred(f(x)) calls f(x), checks that typeof(f(x)) matches the
inferred return value, and passes on the return value. See discussion
in #5404

(No at signs in this commit to avoid noise)
Don't be so stringent about output of to_index
fix #5457

if the type of the rvalue in pointerset is not known, emit a typecheck
instead of an unconditional error.
Merge branch 'master' of github.com:JuliaLang/julia
Merge pull request #5423 from JuliaLang/jb/codecov

simple code coverage tool
Pkg: fetch all remote refs, not just heads.
Merge branch 'master' of github.com:JuliaLang/julia
Take git info out of BUILD_INFO, prepare for tarball export
temporary commit message