These classes need to be refactored so the Socks and Http connect behavior can be separated from PlainSocketImpl, such that it can also be used by a NIO socket impl.