Move ClientRequestContext to nifty-client and add getRequestChannel

Summary: This is for http clients. Http client uses binary protocol and
the context can use the RequestChannel's type to determine if it is a
HttpClient and set its headers.