refactor(builder): simplify sed substitution

The `perl | sed` commands used previously were to remove single quotes
from the string. This sed replacement greatly simplifies that logic.
feat(builder): build apps from more than master

Previously, the builder would completely disregard any pushes from
a branch other than master. This moves the builder command into
a post-receive hook, such that we can reference the branch that
is being pushed to the repository and send that to the builder.

For some reason, this PR also gives us Heroku compatibility on
issue #736, so this PR kills two birds with one stone.

TESTING: To test, we need to successfully push an app from a branch
other than master. To do that, run the following:

    $ make -C builder build restart
    $ cd /tmp
    $ git clone https://github.com/opdemand/example-perl && cd example-perl
    $ git checkout -b test-branch
    $ deis create
    $ git push deis test-branch

To test for the #736 ninja fix, try pushing again. You should see a
"Everything up-to-date" message displayed on your screen, and no
push should occur.

fixes #975, #736
fix(contrib): revert seed hosts for CDN workaround

This reverts commit d3dfa376d86ffcbbbcab8211edb161b4cfde2d72.
chore(controller): remove unused coveragerc

the real coveragerc exists in the controller project.
test(controller): remove scheduler from coverage

The scheduler is not something we can easily test at the moment,
so let's remove it from our test coverage.
Merge pull request #1004 from deis/975-more-than-master

feat(builder): build apps from more than master
Merge pull request #1013 from deis/remove-cdn-workaround

fix(contrib): revert seed hosts for CDN workaround
Merge pull request #1014 from deis/coverage

test(controller): fix up coverage
chore(contrib/*): update to CoreOS 317.0.0

Double-check the IDs:
EC2: https://coreos.com/docs/running-coreos/cloud-providers/ec2/
Rackspace: https://coreos.com/docs/running-coreos/cloud-providers/rackspace/
fix(Makefile): update to work with fleetctl 0.3.2
fix(data-containers): change test command to "inspect"

We used "docker start" to test for the existence of data containers,
but this can fail after the container has run, and cause the || clause
also to fail with "name in use".
fix(controller): use new `fleetctl` semantics

Fleetctl 0.3.2 by default will test for a unit's goal status 10 times,
once every tenth of a second, before failing. This is not generous
enough, so on starting services we do it async with `-no-block` and
then poll for goal status, and on stopping we wait 60 seconds.
fix(Makefile): add phony FORCE target so `make build` always runs
chore(contrib/rackspace): update to new CoreOS 317.0.0 image id

Note this ID was provided to us directly by the CoreOS team; it's
not on their web page quite yet.
fix(Makefile): enable targets to work for non-Vagrant

Adds DEIS_HOSTS, which is set automatically or can be overridden
for non-Vagrant platforms. This is used by ssh_all to determine
which hosts to SSH into - previously, we used `vagrant ssh`,
which obviously only works on Vagrant.

This also updates all the Makefiles to use fleet as appropriate,
and to pull / build / etc. on all DEIS_HOSTS.

TESTING: try the various make commands on Vagrant and Rackspace/EC2

replaces #998
closes #811