Add getHeaders() to HttpClientChannel

Also updates setHeaders() so that it will make a copy of the headers passed in, instead of using a reference to a map that could potentially change