fix(scheduler/coreos): fix apps announcing themselves with no port

This PR contains commits which together address the issues relating to apps not announcing a port. This causes the router component to write an invalid configuration file.

TESTING: rebuild the controller
```console
$ make -C controller stop build start
```

Now, deploy an application which contains a ```web``` Proctype. Note that it should scale just like it always did.
Same with a Dockerfile (cmd type). Now, add a ```clock``` proctype (or just about anything else) to the Procfile and note that no announce containers will be created when the app is scaled.

Testing the lack of port assignment is more difficult - hopefully those who saw the error can confirm this fixes it.

closes #1251, closes #1260, closes #1256
maybe a TODO to revisit this PR/line of code after v1.1.0, then? The idea behind this is that it is a workaround until we get the time to investigate further as to why no port is being pulled from docker