starting to implement the handshake process and client class