Implement set-file-* functions for tramp-gvfs.el

* lisp/net/tramp-gvfs.el (tramp-gvfs-gio-mapping):
Add "gvfs-set-attribute".
Add `tramp-gvfs-handle-set-file-modes',
`tramp-gvfs-handle-set-file-times' and
(tramp-sh-handle-set-file-uid-gid): New defuns.

* lisp/net/tramp.el (tramp-handle-write-region): Set file modes.

* test/lisp/net/tramp-tests.el (tramp-test20-file-modes)
(tramp-test22-file-times): Do not skip for tramp-gvfs.el.
1 job for master in 54 minutes and 36 seconds (queued for 2 seconds)
Status Job ID Name Coverage
failed #2884


Name Stage Failure
test-all Test
Makefile:318: recipe for target 'check-doit' failed
make[2]: *** [check-doit] Error 1
make[2]: Leaving directory '/builds/emacs/emacs/test'
Makefile:293: recipe for target 'check-expensive' failed
make[1]: *** [check-expensive] Error 2
make[1]: Leaving directory '/builds/emacs/emacs/test'
make: *** [check-expensive] Error 2
Makefile:959: recipe for target 'check-expensive' failed
ERROR: Job failed: exit code 1