synced_folders/rsync: only chown when necessary [GH-3525]

Run remote rsync as root to guarantee that rsync can write to guestpath.
This obviates the need to chown the guestpath to the SSH user prior to
sync.

This brings a substantial speedup (2x on a moderately-sized shared
folder) and properly triggers filesystem notifications on only the files
changed by a given sync.
core: return {} if cached synced folders file missing [GH-3550]

A missing synced folders cache indicates an empty cache, not a failure
that should be handled by the caller. The cache file is missing from
data dirs created by an earlier version of Vagrant.

Fixes #3550.
command/rsync-auto: properly exit on interrupt

Currently, interrupting 'vagrant rsync-auto' once it's waiting for
filesystem events has no effect. Appears to be a deadlock related to
signal handlers in Ruby 2.0 [0].

Remove call to `thread.join` in signal handler. The handler doesn't
need to wait for `true` to be added to the queue; it just needs to
launch the thread.

[0]: https://bugs.ruby-lang.org/issues/7917
Merge branches '3550', 'rsync-conservative-chown' and 'rsync-auto-handle-interrupt'
release: v1.6.0.whoop1