fix(controller): Determine registry address during start

Before this change re-deploying apps failed when the registry was re-scheduled to a different instance in the cluster.

Fixes #1128

- [x] Store just the image name and tag in the build model
- [x] Prefix the image reference before fleet pulls the image
- [x] Prefix the image reference before controller pushes config changes to the registry
- [x] Allow to migrate from existing releases
- [x] Don't block #1412
Just for some context, the registry module already uses the REGISTRY_URL setting, so the code to use REGISTRY_HOST on line 495 is sort of redundant, which means that this field should not be necessary. `source_image` should be just the repository name and a tag (`latest` is assumed if no tag is present in `source_image`). The module is just going to strip the hostname away and perform lookups/modifications to the registry living at REGISTRY_URL.

> will likely break with #1412 as this PR introduces images without a sha, which are internally stored

That was used to determine if the app came from the builder or not (in which case it came from `deis pull`), which will need refactoring for sure.