Fix #6372

This adds the package to REQUIRE on Pkg.clone() if it exists in
METADATA. This means that calling Pkg.clone() on a repo that's on an
old tag will result in the package getting updated to the latest
release, but that seemed preferable to making Pkg.clone() on a package
that's on a tag result in a pinned package.
Added capability to process splatted arguments and moved the check
of argument number compatibiilty from macro expansion time to runtime.
Modified to differentiate situations when splatting does and does not
occur and checks argument cardinality at macro expansion time if not.
Further optimized based on lack of splatting
add jl_get_cpu_name function to libjulia

thin ccall'able wrapper around llvm::sys::getHostCPUName
Modify jl_get_cpu_name to use jl_pchar_to_string,

add Sys.cpu_name
Move cpu_name into init_sysinfo()
Evaluate and print parts of comparisons in `@test`.
Adds a resultexpr field to Failure and Success.
Add Dates module to Base
Add back llvmcall
Import update llvmcall from cxx branch
Fix build for non-MCJIT versions of Julia & Add tests
Simple implementation of chmod(path, mode)

currently only integer modes, can do string modes like +x later
fixes #7574
Allow deletion of read-only files on Windows
Remove type constraints from intersect(::StepRange,::StepRange). This allows any range type where the step type implements lcm(), gcdx(), and mod() to use the method definition.
Added for spatted printf tests
Revamp netload tests to more verbose and resiliient style
Fix nettest to run on multiple workers again
Whoops, accidentally reduced test case size
Update Package Development documentation