fix(services): manage dependencies manually

Since fleet's dependency management cross-cluster is lacking
(see coreos/fleet#338), we resort to starting the services in
a certain order. We also remove Requires=/After= if the dependency
could potentially exist on another server in the cluster.
We're essentially waiting for X-Requires/X-After to be implemented
in fleet.

Also, we make the contrib/ scripts use this Makefile to start
services so we don't repeat logic. Lastly, fleet version checking
is added to the Makefile so that it will error if fleetctl locally
is a different version than the server - many unstable/incomplete
changes are in master.

fixes #810, #805
Merge pull request #821 from deis/fix_scheduling

fix(services): manage dependencies manually
chore(controller): update to Django 1.6.3 security release

Details at https://www.djangoproject.com/weblog/2014/apr/21/security/
fix(contrib/ec2): fix ephemeral port range

The default ephemeral port range is set to 49152 according to
http://www.ncftp.com/ncftpd/doc/misc/ephemeral_ports.html. Some
apps that start on 49153 will be blocked by the firewall otherwise.
fix(coverage): cd to controller dir before submitting to coveralls.io

closes #818.
Merge pull request #827 from deis/fix-ephemeral-port-range

fix(contrib/ec2): fix ephemeral port range
Merge pull request #828 from deis/fix-coveralls-io

fix(coverage): cd to controller dir before submitting to coveralls.io
Merge pull request #794 from deis/django-1.6.3

chore(controller): update to Django 1.6.3 security release
fix(Makefile): use /bin/sh if syntax
Merge pull request #829 from deis/make-controller

fix(Makefile): use /bin/sh if syntax
fix(builder): update Docker to v0.10.0

Fixes #712.
feat(Makefile): pull deis/slugrunner

Pulling deis/slugrunner on every host will significantly speed up
both application launch times on nodes that have not yet started an
app as well as speeding up launch times for deis/registry on vagrant
deploys or any other deployment option that utilizes `make pull`.
Merge pull request #832 from deis/slugrunner-pull

feat(Makefile): pull deis/slugrunner
feat(controller): make Procfile mandatory

At the moment, all custom Dockerfile apps will not start because the
'start' command is not present in the container. Instead, we can
generically parse the Procfile for the process type and start that
instead. This makes two important changes:

1) All applications **must** specify a Procfile
2) All custom Dockerfile apps must have access to cat, grep, cut and sh

The justification for 1) is so that we have a known place to search for
runnable processes. 2) is because of the change from `start web` to parse
the Procfile for the process types.

fixes #668
fix(Makefile): 'make run' starts Deis in one shot

Restores the happy developer experience of typing 'make run'
and getting a Deis stack.
Merge pull request #833 from deis/builder-docker-0.10.0

fix(builder): update Docker to v0.10.0
Merge pull request #831 from deis/makefile_friendly_loop

fix(Makefile): 'make run' starts Deis in one shot
chore(contrib/ec2): update AMIs for build 298.0.0

based on the updated list at
https://coreos.com/docs/running-coreos/cloud-providers/ec2/
chore(contrib): remove docker project

This was a proof-of-concept project that's unsupported and not
in use.
Merge pull request #835 from deis/update-amis

chore(contrib/ec2): update AMIs for build 298.0.0