Use copy_file_range() whenever possible in g_file_copy
Coreutils cp use copy_file_range() syscall as a first step towards copying files, before falling back to other methods. This has performance improvements compared to raw read/write operations, specially in remote filesystems protocols, like SMB and NFS, since the kernel can ask the remote machine what operation the client is trying to do so it doesn't hit the wire. Clients that rely on Glib for file operations would benefit if g_file_copy would do this for them.