Implement a deploy scripts search path and allow absolute paths to the script. Fixes #347.

* Implemented a deploy scripts search path for which the order is:
  * <config-file.path>/cloud.deploy.d/
  * <salt-cloud.package>/deploy/

* The user can also specify additional search path entries by providing `deploy_scripts_search_path` in the configuration file. It can be a string(a single path) or a list(multiple search paths). Non existing paths are not searched for scripts.

* If the user provided a full path to the deploy script, it's used and no additional searches are made.
Use `salt.utils.fopen()` instead of plain `open()`.
Minor formatting + PEP-8 changes.
The provided deploy scripts directory does not need to be checked.
Fix getting the value of `include` too soon.
Merge branch 'develop' of github.com:saltstack/salt-cloud into develop
Update the deploy dir entry in the list, it's path might have been made absolute.
Make the ssh usernames logic equal to both EC2 and AWS(simpler on this one).
When updating the bootstrap script, try writing it up the search path until successful.
Improved update logic and let users known what, why and when it failed.
Merge pull request #458 from s0undt3ch/develop

Implement deploy search paths and abspath to scripts support.