feat(builder): automatically run `git gc` on deploy

Ref #987

This should be replaced by a cronjob after we switch to the new init,
but this will do for now.
fix(controller): validate app structure values

This guards against `deis ps:scale web=-1` and other bad input.
Merge pull request #1654 from deis/feat/builder/auto-run-git-gc

feat(builder): automatically run `git gc` on deploy
Merge pull request #1658 from mboersma/1557-validate-ps-scale

fix(controller): validate app structure values
fix(controller): validate Cluster.domain field
Merge pull request #1657 from mboersma/1623-validate-cluster-domain

fix(controller): validate Cluster.domain field