Adding client and server functionality