feat(docker registry): add Vagrantfile for Docker registry

Adds a contrib/docker-registry directory with a Vagrantfile that
configures and starts a VM with the Docker registry service.
feat(Makefile): move rsync from Vagrantfile to Makefile

Moves rsync from the Vagrantfile to the Makefile, enabling
development to occur on non-local Deis deployments (EC2, Rackspace,
etc.).

TESTING: ensure `make build` works the same way, both for the
main Makefile and the individual component Makefiles. To test for
a remote deployment:

```console
$ DEIS_HOSTS="54.12.21.12 54.13.11.4 55.61.2.4" make build
```

You can also test the `make rsync` target directly.

closes #1020
docs(contrib): fix DEIS_HOSTS example

Previous example was invalid.
chore(Makefile): clean up rsync excludes
fix(docker-registry): up timeout

Slow connections wouldn't pull the image in under 90 seconds.
Merge pull request #1135 from deis/feat-local_registry

feat(docker registry): add Vagrantfile for Docker registry
fix(client): add "Referer" header to requests

When running Deis behind an SSL-terminated endpoint, there are
issues with Django's CSRF protection. Adding a Referer header
is mandatory when using SSL with Django.

Reference: https://code.djangoproject.com/ticket/16870

fixes #1002
Merge pull request #1193 from deis/1020-make_rsync

feat(Makefile): move rsync from Vagrantfile to Makefile
Merge pull request #1218 from deis/1002-add_referer_header

fix(client): add "Referer" header to requests
feat(*): allow custom component images

Pull image names for Deis components from etcd, defaulting to the
stock Deis component images. This enables users to supply their own
router, for instance, simply by setting an etcd key:

/deis/{component}/image

Also, the Deis release version is now stored in /etc/deis-release.
This is by default appended when getting the image names for Deis
components, but can be overridden if set in etcd at /deis/release.
feat(*): move data containers into new unit files

Moving these containers into their own data files
sets the stage for locking data containers to specific
machines. This also enables us to stop Postgres cleanly on
the database-data container.

closes #638
fix(*): schedule data containers to specific machines

Currently, whenever database, logger, registry, or builder are rescheduled
by fleet, their data container is left on the original machine. The effect
for the user is that they lose their data! This commit schedules data containers
to a preselected machine. If that machine goes down, the underlying service will
go down, but this is preferred to scheduling it on another host that won't have
the data.

Note that this is an interim fix - stateful data should be stored off-host.

closes #1038
placeholder