As a gRPC API consumer
I want to be able to resolve a source name or address from a resolver endpoint
So that I can easily discover a target address without knowing additional details about the source name/address

Given pointer_handler.rs already exist and define a similar pattern
When adding the resolver gRPC handle
Then add /src/grpc/resolver_handler.rs based on /src/grpc/pointer_handler.rs
And only add a function called 'resolve' similar to the get_pointer function, but without the PointerError requirement

Given the 'resolve' function in resolver_service.rs can accept any source name or address as an input and output the target address
When adding the resolver endpoint
Then ensure /src/grpc/resolver_handler.rs includes `resolver_service: Data` in ResolverHandler struct
And 'resolve' function in resolve_handler.rs calls the 'resolve_name' function in resolver_service.rs to attempt to resolve the address
And return the resolved target address to the consumer (as content) along with the original address (as address)
And update /src/lib.rs to provide the ResolverHandler struct dependency

Implementation Notes

- Place any unit tests at the bottom of the same file as the associated production code
- Increment patch version of anttp package in Cargo.toml
- Create a copy of this issue description and save to /spec using the name of this issue as the filename (with lower underscore case, starting with the 5 char padded issue number, e.g. 00001_issue_title.txt)
- Update unit tests to validate the changes

Example proto:

```
syntax = "proto3";

package resolver;

service ResolverService {
  rpc Resolve(ResolverRequest) returns (ResolverResponse);
}

message ResolverRequest {
  string address = 1;
}

message ResolverResponse {
  string address = 1;
  string content = 2;
}
```