Native implementation of mv & cp commands in repl

Instead of calling an underlying shell, the mv and cp commands now use
jl_fs_rename and jl_fs_sendfile respectively (wrappers for libuv).  In
the event that the rename call fails on error, mv command still uses
native implementation by defaulting to cp (sendfile) and rm (unlink).

This fix also includes a new unit test for the copy function.  It copies
contents of one file to another and checks that both files are
equivalent.

Fixes issue #4157
Unit test to test rename on directories

Added a unit test to ensure mv/rename also works on directories in
addition to files.

Ref #4157
support multi-arg push! and unshift!
improved error messages, removed function names
Consistently use quotes in parsing errors

Use quotes around parsed expressions to make understanding
messages easier.
Changed the printing of MethodError

MethodError printed "no method f(DataType)" for if it couldn't find a
method for the concrete datatype, eaven tough there were methods
available for other datatypes. This pathch changes the printing from
DataType to Type{MyType} instead.

fix #4825
Small typo
add helpful errors for features not supported inside new(). closes #4843
Merge pull request #4817 from nalimilan/quotes

Consistently use quotes in parsing errors
Merge pull request #4835 from ivarne/no_method_error

Changed the printing of MethodError
show Type{T} for types other than DataType in MethodErrors
clarify behavior of setdiff. closes #4833
try to improve syntax error line numbers. fixes #4844

also reword the LoadError message. "at" vs. "in" was not helpful, so
instead make it clear that this is during loading of a file, and that the
line number refers to the start of the expression that caused the error,
since in many cases that's the best we can do.
Merge branch 'master' of github.com:JuliaLang/julia
Merge pull request #4816 from davidssmith/errfix

improved error messages, removed function names from error text; no changes to error formatting.
bring more error messages up to spec
Wrap the rank one updates from BLAS. Organize the blas.jl after BLAS levels. Code cleanup.
Merge pull request #4684 from JuliaLang/anj/blas

Wrap the rank one updates from BLAS. Organize the blas.jl after BLAS levels. Code cleanup.
Pkg.GitHub: basics of interacting with the GitHub API using curl.
Pkg.GitHub: return HTTP status codes as well as response content.