Proxy process for artifact and source services
As described in #810 (closed), each pull and push job currently opens its own connection to the artifact server. #1042 will fix this for CAS access as buildbox-casd will act as CAS proxy. However, buildbox-casd will not handle artifact and source service access and thus, pull and push jobs will still open its own connections.
A relatively simple approach to solve this is to spawn a child process early on that will act as a gRPC proxy for artifact and source services. Pull and push jobs will talk to the proxy process over a local UNIX socket and the proxy process will maintain a single, shared connection to the artifact server.