only specify a -p option to ssh when the port is explicitly set

capistrano_rsync_with_remote_cache always adds the option '-p <port>' to the rsync rsh option. When there is no port in any capistrano setting, the default port 22 is used. This does not work in the case that there is no port in capistrano settings or server definition, but in a host entry in .ssh/config, as the '-p 22' option overwrites the config file.
Capistrano SSH calls don't have this problem as Net::SSH reads and applies .ssh/config in its ruby code.

This pull request changes the rsync call to only include a -p option to ssh when the port is explicitly set in capistrano. This causes rsync to honor .ssh/config entries automatically.