Starts work on solving problem: Socket.accept() block for soTimeout,
then throws exception. I need to use this to redraw the progress and
allow user input while user tries to host OR multithread the process.