docs: function Communication() {
  		// setup abstract layer
  		core.CommunicationAbstract.apply(this, arguments);
  
  		// when socket is closed we will emit the close event
  		this.object.on('close', this.emit.bind(this, 'close'));
  
  		// setup a json stream handler there rescive data from the TCP socket
  		// remember that this.object is the TCP socket
  		jsonStream(this, this.object);
  	}