Adds majority of the code

currently is not connecting to the other client