fix(registry): use docker cache
fix(builder): validate that properly formed slugs are added correctly
fix(controller): deploy only when Build is present

In terms of 12 factor's best practices, a build and configuration is a
release. Currently, we create and deploy a new release with any change
to an application published a release. This is because we create an
initial build on app creation. With this change, no build is created on
app creation, and the first release is published to the scheduler once
the release has a build.

Other notable changes:

 - the release's image field has been removed in favour of an app's ID +
   the release's version
 - lots of the view logic has been refactored into the models
 - build and config are mandatory in Release.new

Making Build and Config mandatory in Release.new had to happen as Builds
can be nil, which caused bugs when trying to roll back to a previous
release with a nil Build. Release.rollback would call Release.new with
an older build's release info, which sometimes had a nil Build. Because
of how Release.new worked, Release.new would use it's own current Build
in the new release if the supplied build was nil, causing unintentional
behaviour.
chore(*): bump CoreOS to 472.0.0
Merge pull request #2159 from bacongobbler/premature_deploy

fix(controller): deploy only when Build is present
Retry downloading deisctl
feat(controller): bump API to v1
Merge pull request #2191 from mboersma/coreos-472

chore(*): bump CoreOS to 472.0.0
fix(logger): remove logger-build container after "docker cp"

This works around docker/docker#8632 and an error in the Makefile
evaluation order logic.
fix typo
Merge pull request #2190 from mboersma/fix-docker130-builds

fix(logger): remove logger-build container after "docker cp"
ref(database): reduce image size
Merge pull request #2205 from ngpestelos/patch-1

fix typo
Merge pull request #2186 from bacongobbler/controllerv1

feat(controller): bump controller API to v1
Merge pull request #2188 from mboersma/catch-docker-add-zero

fix(builder): validate that properly formed slugs are added correctly
Merge pull request #2206 from aledbf/reduce_database_size

ref(database): reduce image size
Merge pull request #2173 from aledbf/registry_use_docker_cache

fix(registry): use docker cache
Merge pull request #2195 from glomium/master

Retry downloading deisctl
fix(client): re-parse docopt
fix(tests): use streamOutput for test runs