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.
fix(test): update example-ruby-sinatra location

The app was purged and moved to the deis organization. It no longer
lives in the opdemand org.
Merge pull request #1015 from deis/example-integration

fix(test): update example-ruby-sinatra location
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
feat(vagrant): make rsync as default

fixes #957, #752
Merge pull request #1024 from deis/rsync

feat(vagrant): make rsync as default
chore(contrib/*): update to CoreOS 324.1.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(controller): watch fifth column for state

fleetctl v0.3.4 introduced a fifth column, so we need to update
the location of the state column.
docs(contrib/rackspace): document manual update for CoreOS

Since the Rackspace images are updated infrequently, we still use
CoreOS 317.0.0 images on Rackspace. This commit details the workaround
to manually update CoreOS to the latest release from the channel.
Merge pull request #1019 from deis/coreos-317.0.0

chore(contrib/*): update CoreOS to 324.1.0
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