add pojo objects, protocol to communicate with server, and service impl code