Building a Multi-User Chat Application in Java - Part 1: Basic Chat Server