refactor part 2/2

@bellycard/infrastructure 
More refactor.  More tests.
Are you creating two services, one for the stack and one for the AZ? Then we'd have to to some kind of intersection in Jockey, right? Why not just write the AZ as a tag on the stack service? That gives us easy access at the HTTP and even DNS level  - `us-east-1a.jockey-api-production.services.consul`