Basic Client

Can both receive and send messages at the same time.