allow supplying of arbitrary arguments to rsync
handle removals
make rsync -v optional
fix bug with guard group containing multiple Guard::Rsync guards

In a guard group containing n Guard::Rsync guards, if
:run_group_on_start is true, at start time each guard not only runs
itself but also the n-l other Guard::Rsync guards via the
::Guard.guards.each loop, resulting in a total of n^2 invocations of
run_all.  This is easily fixed by skipping any Guard::Rsync guards
inside the loop.
omit -v from rsync arguments during run_all

run_all is called less frequently, and unlike run_on_change etc., it
is not triggered by a listener event.  Therefore the deltas are likely
to be larger and the consequent output verbosity too high if -v is
used.
output the offending input/output parameter

If there are multiple guards, this makes it clearer which one failed.