Add server and rest of client functionality