Refactor Client to break into two classes Client and HttpClient.

Goal here would be a variant of the Client that could talk right to a manager to eliminate HTTP/paste web server for testing or direct running inside of Galaxy someday.
Outline of new direct client...

It occurs to me I should probably scrap this and accomplish this via delegation instead, yet another abstraction on top of the transport abstraction.

Client -> Communicator.

Communicator => HttpCommunicator -> CurlTransporter
                                 -> UrllibTransporter
             => DirectCommunicator

Here => is inheritence and -> is association.