Fix remote file system permissions problems

Running SSH command as a non-supperuser we got some file system
permission problems, this script fix it.
Separate _deploy_prepare into two functions

Create `_deploy_prepare_upgrade` and `_deploy_prepare_rollback`
functions.
Validate ENV.servers file and add lock file after fs checking
Create '-c/--config' options to display config options
Remove trim spaces after settings
Change the way you use `rsync`

- Create global variable SSH_OPTIONS to centralize SSH options;
- Fixed remote permission problem when removind remote hooks;
- Passed log responsibility the `_deploy_prepare` function intead
  `_deploy_prepare_*`;
- Update `_ssh` function to use SSH_OPTIONS variables;
- Remove logging responsibility of `_deploy_prepare_rollback` function;
- Change the upgrade to use the `rsync` localy insteade to use SSH
  connections for the deploy script.
Merge branch 'develop'