Let client override the service name

When submitting and Endpoint, Zipkin expects the client to submit its own
host and port, but the service name of the service it's calling. This
commit adds a method to ClientTracer that lets you specify the name of the
service you're calling.

If no service name is specified, Brave will fallback to using the server's
service name when submitting the Endpoint.