Client disconnect functionality

Still need to handle disconnects on the server side.