Improve Dockerfile and Procfile workflows

This PR refactors the builder logic to better support Dockerfile builds alongside Heroku-style builds.  Improvements and refactoring include:

- store SHA, Procfile and Dockerfile when builds flow through the builder component
- auto-scale web=1 for heroku workflow, cmd=1 for docker workflow
- detect exposed ports rather than using hardcoded 5000/tcp
- add container type check before scale operations (fixes #496)
- use SHA in release summary if available
- fix operator precedence bug from deis/deis#890
- add tests for heroku and docker workflows, plus tests for invalid process types

This PR also cleans up the entire set of developer docs, including a new section on app configuration which fixes #695.