Support for migrations and deploy tested sha

This adds support for running migrations and deploying the currently tested sha (before the latest commit from the branch was deployed).

@rkh I'm not really sure how an example project should look like. I use the edge feature already here: https://magnum.travis-ci.com/sixdoorsHQ/bridge-shopify, but OpsWorks is a paid AWS service (I'm only a customer loving continue deployment :smile:) and requires some travis unrelated setup before the deployment.

Here is an example .travis.yml
```yaml
language: ruby
bundler_args: --without development
deploy:
  edge: true
  provider: opsworks
  migrate: true
  app_id: <app-id>
  access_key_id:
    secure: XYZ
  secret_access_key:
    secure: XYZ
````