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